Assimp  v3.1.1 (June 2014)
assimp::animation::aiNodeAnim Struct Reference

Describes the animation of a single node. More...

Public Attributes

aiString mNodeName
 The name of the node affected by this animation. More...
 
uint mNumPositionKeys
 The number of position keys. More...
 
uint mNumRotationKeys
 The number of rotation keys. More...
 
uint mNumScalingKeys
 The number of scaling keys. More...
 
aiVectorKeymPositionKeys
 The position keys of this animation channel. More...
 
aiAnimBehaviour mPostState
 Defines how the animation behaves after the last key was processed. More...
 
aiAnimBehaviour mPreState
 Defines how the animation behaves before the first key is encountered. More...
 
aiQuatKeymRotationKeys
 The rotation keys of this animation channel. More...
 
aiVectorKeymScalingKeys
 The scaling keys of this animation channel. More...
 

Detailed Description

Describes the animation of a single node.

The name specifies the bone/node which is affected by this animation channel. The keyframes are given in three separate series of values, one each for position, rotation and scaling. The transformation matrix computed from these values replaces the node's original transformation matrix at a specific time. This means all keys are absolute and not relative to the bone default pose.

The order in which the transformations are applied is – as usual – scaling, rotation, translation.

Note: All keys are returned in their correct, chronological order. Duplicate keys don't pass the validation step. Most likely there will be no negative time values, but they are not forbidden (so implementations need to cope with them!).

Member Data Documentation

aiString assimp::animation::aiNodeAnim::mNodeName

The name of the node affected by this animation.

The node must exist and it must be unique.

uint assimp::animation::aiNodeAnim::mNumPositionKeys

The number of position keys.

uint assimp::animation::aiNodeAnim::mNumRotationKeys

The number of rotation keys.

uint assimp::animation::aiNodeAnim::mNumScalingKeys

The number of scaling keys.

aiVectorKey* assimp::animation::aiNodeAnim::mPositionKeys

The position keys of this animation channel.

Positions are specified as 3D vectors. The array is mNumPositionKeys in size.

If there are position keys, there will also be at least one scaling and one rotation key.

aiAnimBehaviour assimp::animation::aiNodeAnim::mPostState

Defines how the animation behaves after the last key was processed.

The default value is aiAnimBehaviour.DEFAULT (the original transformation matrix of the affected node is used).

aiAnimBehaviour assimp::animation::aiNodeAnim::mPreState

Defines how the animation behaves before the first key is encountered.

The default value is aiAnimBehaviour.DEFAULT (the original transformation matrix of the affected node is used).

aiQuatKey* assimp::animation::aiNodeAnim::mRotationKeys

The rotation keys of this animation channel.

Rotations are given as quaternions. The array is mNumRotationKeys in size.

If there are rotation keys, there will also be at least one scaling and one position key.

aiVectorKey* assimp::animation::aiNodeAnim::mScalingKeys

The scaling keys of this animation channel.

Scalings are specified as 3D vectors. The array is mNumScalingKeys in size.

If there are scaling keys, there will also be at least one position and one rotation key.


The documentation for this struct was generated from the following file: