Axiom.Animating.VertexAnimationTrack.CreateVertexPoseKeyFrame C# (CSharp) Method

CreateVertexPoseKeyFrame() public method

Creates the single pose KeyFrame and adds it to this animation.
public CreateVertexPoseKeyFrame ( float time ) : VertexPoseKeyFrame
time float
return VertexPoseKeyFrame
		public VertexPoseKeyFrame CreateVertexPoseKeyFrame( float time )
		{
			if ( animationType != VertexAnimationType.Pose )
				throw new Exception( "Pose keyframes can only be created on vertex tracks of type pose; in VertexAnimationTrack::createVertexPoseKeyFrame" );
			return (VertexPoseKeyFrame)CreateKeyFrame( time );
		}

Usage Example

Ejemplo n.º 1
0
		protected void ReadPoseKeyframe( BinaryReader reader, VertexAnimationTrack track )
		{
			var time = ReadFloat( reader );
			var vkf = track.CreateVertexPoseKeyFrame( time );

			if ( !IsEOF( reader ) )
			{
				var chunkID = ReadChunk( reader );
				while ( !IsEOF( reader ) && chunkID == MeshChunkID.AnimationPoseRef )
				{
					switch ( chunkID )
					{
						case MeshChunkID.AnimationPoseRef:
						{
							var poseIndex = ReadUShort( reader );
							var influence = ReadFloat( reader );
							vkf.AddPoseReference( poseIndex, influence );
							break;
						}
					}
					if ( !IsEOF( reader ) )
					{
						chunkID = ReadChunk( reader );
					}
				}
				if ( !IsEOF( reader ) )
				{
					// backpedal to the start of chunk
					Seek( reader, -ChunkOverheadSize );
				}
			}
		}