iSkeletonAnimation2 Struct Reference
[Mesh plugins]
Factory for skeletal animations.
More...
#include <imesh/skeleton2anim.h>

Public Member Functions | |
virtual CS::Animation::ChannelID | AddChannel (BoneID bone)=0 |
Add a new channel associated with bone. | |
virtual void | AddKeyFrame (CS::Animation::ChannelID channel, float time, const csQuaternion &rotation, const csVector3 &offset)=0 |
Add a key frame at given time within channel. | |
virtual void | BlendState (csSkeletalState2 *state, float baseWeight, float playbackTime, bool isPlayingCyclic) const =0 |
Blend the animation into a skeletal state buffer at a specific playback position. | |
virtual CS::Animation::ChannelID | FindChannel (BoneID bone) const =0 |
Find the channel associated with a specific bone, if any. | |
virtual float | GetDuration () const =0 |
Get the total duration of the animation. | |
virtual void | GetKeyFrame (CS::Animation::ChannelID channel, CS::Animation::KeyFrameID keyframe, BoneID &bone, float &time, csQuaternion &rotation, csVector3 &offset)=0 |
Get a specific key frame within channel. | |
virtual size_t | GetKeyFrameCount (CS::Animation::ChannelID channel) const =0 |
Get total number of key frames in channel. | |
virtual const char * | GetName () const =0 |
Get the animation name. | |
virtual void | GetTwoKeyFrames (CS::Animation::ChannelID channel, float time, BoneID &bone, float &timeBefore, csQuaternion &beforeRot, csVector3 &beforeOffset, float &timeAfter, csQuaternion &afterRot, csVector3 &afterOffset)=0 |
Get the two key frames on "either side" of time. |
Detailed Description
Factory for skeletal animations.Defines the key frames but not the current playing state. Each animation is made up of one or more channels, where a channel is a set of key frames associated with a specific bone.
Definition at line 202 of file skeleton2anim.h.
Member Function Documentation
virtual CS::Animation::ChannelID iSkeletonAnimation2::AddChannel | ( | BoneID | bone | ) | [pure virtual] |
Add a new channel associated with bone.
If a channel already exists, it will be returned.
- Parameters:
-
bone bone id to associate channel with.
virtual void iSkeletonAnimation2::AddKeyFrame | ( | CS::Animation::ChannelID | channel, | |
float | time, | |||
const csQuaternion & | rotation, | |||
const csVector3 & | offset | |||
) | [pure virtual] |
Add a key frame at given time within channel.
- Parameters:
-
channel channel id time key frame time key key frame data
virtual void iSkeletonAnimation2::BlendState | ( | csSkeletalState2 * | state, | |
float | baseWeight, | |||
float | playbackTime, | |||
bool | isPlayingCyclic | |||
) | const [pure virtual] |
Blend the animation into a skeletal state buffer at a specific playback position.
- Parameters:
-
state result state object baseWeight base weight for blending playbackTime current playback time isPlayingCyclic if the playing should be cyclic
virtual CS::Animation::ChannelID iSkeletonAnimation2::FindChannel | ( | BoneID | bone | ) | const [pure virtual] |
Find the channel associated with a specific bone, if any.
virtual float iSkeletonAnimation2::GetDuration | ( | ) | const [pure virtual] |
Get the total duration of the animation.
virtual void iSkeletonAnimation2::GetKeyFrame | ( | CS::Animation::ChannelID | channel, | |
CS::Animation::KeyFrameID | keyframe, | |||
BoneID & | bone, | |||
float & | time, | |||
csQuaternion & | rotation, | |||
csVector3 & | offset | |||
) | [pure virtual] |
Get a specific key frame within channel.
- Parameters:
-
channel channel id keyframe key frame number to get bone bone id associated with channel time time associated with key frame key key frame data
virtual size_t iSkeletonAnimation2::GetKeyFrameCount | ( | CS::Animation::ChannelID | channel | ) | const [pure virtual] |
Get total number of key frames in channel.
- Parameters:
-
channel channel id
virtual const char* iSkeletonAnimation2::GetName | ( | ) | const [pure virtual] |
Get the animation name.
virtual void iSkeletonAnimation2::GetTwoKeyFrames | ( | CS::Animation::ChannelID | channel, | |
float | time, | |||
BoneID & | bone, | |||
float & | timeBefore, | |||
csQuaternion & | beforeRot, | |||
csVector3 & | beforeOffset, | |||
float & | timeAfter, | |||
csQuaternion & | afterRot, | |||
csVector3 & | afterOffset | |||
) | [pure virtual] |
Get the two key frames on "either side" of time.
- Parameters:
-
channel channel id time time to get key frames for bone bone id associated with channel timeBefore time associated with key frame before given time before key frame data before given time timeAfter time associated with key frame after given time after key frame data after given time
The documentation for this struct was generated from the following file:
- imesh/skeleton2anim.h
Generated for Crystal Space 1.4.0 by doxygen 1.5.8