Animation Data structures in XNA framework

>> Root is the root (BoneContent type) of the given skeletan.

Root.Animations => (Animations is a property of type AnimationContentDictionary)

Animations: This property holds all the
animations associated with a model(for e.g. walking, running, jumping)
in AnimationContentDictionary.

AnimationContentDictionary : is a dictionary of

where name = name of the animation and AnimationContent is the animation data for that animation of the whole model

Thus, one AnimationContent describes a single animation (for e.g. walking).

AnimationContent (e.g. WALK):

It contains a collection of data channels. Also, it represents one complete animation for the model; which can be visualized with all the data channels working together.

AnimationContent.Channels => (Channels is a property of type AnimationChannelDictionary)

AnimationChannelDictionary : Dictionary of

where name = name of the object being animated by each channel.

AnimationChannel (e.g. Movement of right leg in WALKing animation= 1 AnimationChannel):

It is a collection of Keyframes describing the movement of a single object/bone.

class AnimationChannel : ICollection

Thus, I said AnimationChannel “is” made up of a bunch of AnimationKeyFrame.


It describes the position of AnimationChannel at a single point in
time, a.k.a, the position of the associated bone/object (from the
AnimationChannelDictionary.Key (string)).

It comprises of these members which completely describe the AnimationChannel:

Matrix Transform : Position/Orientation

TimeSpan Time: Time instant


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s