Path Tracer
Public Attributes | List of all members
aiNodeAnim Struct Reference

#include <anim.h>

Public Attributes

C_STRUCT aiString mNodeName
 
unsigned int mNumPositionKeys
 
C_STRUCT aiVectorKeymPositionKeys
 
unsigned int mNumRotationKeys
 
C_STRUCT aiQuatKeymRotationKeys
 
unsigned int mNumScalingKeys
 
C_STRUCT aiVectorKeymScalingKeys
 
C_ENUM aiAnimBehaviour mPreState
 
C_ENUM aiAnimBehaviour mPostState
 

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

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 also ( so implementations need to cope with them! )

Member Data Documentation

◆ mNodeName

C_STRUCT aiString aiNodeAnim::mNodeName

The name of the node affected by this animation. The node must exist and it must be unique.

◆ mNumPositionKeys

unsigned int aiNodeAnim::mNumPositionKeys

The number of position keys

◆ mNumRotationKeys

unsigned int aiNodeAnim::mNumRotationKeys

The number of rotation keys

◆ mNumScalingKeys

unsigned int aiNodeAnim::mNumScalingKeys

The number of scaling keys

◆ mPositionKeys

C_STRUCT aiVectorKey* aiNodeAnim::mPositionKeys

The position keys of this animation channel. Positions are specified as 3D vector. The array is mNumPositionKeys in size.

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

◆ mPostState

C_ENUM aiAnimBehaviour 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 taken).

◆ mPreState

C_ENUM aiAnimBehaviour 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).

◆ mRotationKeys

C_STRUCT aiQuatKey* aiNodeAnim::mRotationKeys

The rotation keys of this animation channel. Rotations are given as quaternions, which are 4D vectors. The array is mNumRotationKeys in size.

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

◆ mScalingKeys

C_STRUCT aiVectorKey* aiNodeAnim::mScalingKeys

The scaling keys of this animation channel. Scalings are specified as 3D vector. 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: