![]() |
OGRE 1.12.10
Object-Oriented Graphics Rendering Engine
|
Specialised AnimationTrack for dealing with node transforms. More...
#include <OgreAnimationTrack.h>
Public Member Functions | |
NodeAnimationTrack (Animation *parent, unsigned short handle) | |
Constructor. | |
NodeAnimationTrack (Animation *parent, unsigned short handle, Node *targetNode) | |
Constructor, associates with a Node. | |
virtual | ~NodeAnimationTrack () |
Destructor. | |
void | _applyBaseKeyFrame (const KeyFrame *base) |
Internal method to re-base the keyframes relative to a given keyframe. | |
NodeAnimationTrack * | _clone (Animation *newParent) const |
Clone this track (internal use only) | |
void | _keyFrameDataChanged (void) const |
Internal method used to tell the track that keyframe data has been changed, which may cause it to rebuild some internal data. | |
virtual void | apply (const TimeIndex &timeIndex, Real weight=1.0, Real scale=1.0f) |
Applies an animation track to the designated target. | |
virtual void | applyToNode (Node *node, const TimeIndex &timeIndex, Real weight=1.0, Real scale=1.0f) |
As the 'apply' method but applies to a specified Node instead of associated node. | |
virtual TransformKeyFrame * | createNodeKeyFrame (Real timePos) |
Creates a new KeyFrame and adds it to this animation at the given time index. | |
virtual Node * | getAssociatedNode (void) const |
Returns a pointer to the associated Node object (if any). | |
virtual void | getInterpolatedKeyFrame (const TimeIndex &timeIndex, KeyFrame *kf) const |
Gets a KeyFrame object which contains the interpolated transforms at the time index specified. | |
virtual TransformKeyFrame * | getNodeKeyFrame (unsigned short index) const |
Returns the KeyFrame at the specified index. | |
virtual bool | getUseShortestRotationPath () const |
Gets the method of rotation calculation. | |
virtual bool | hasNonZeroKeyFrames (void) const |
Method to determine if this track has any KeyFrames which are doing anything useful - can be used to determine if this track can be optimised out. | |
virtual void | optimise (void) |
Optimise the current track by removing any duplicate keyframes. | |
virtual void | setAssociatedNode (Node *node) |
Sets the associated Node object which will be automatically affected by calls to 'apply'. | |
virtual void | setUseShortestRotationPath (bool useShortestPath) |
Sets the method of rotation calculation. | |
![]() | |
AnimationTrack (Animation *parent, unsigned short handle) | |
Constructor. | |
virtual | ~AnimationTrack () |
virtual void | _buildKeyFrameIndexMap (const std::vector< Real > &keyFrameTimes) |
Internal method to build keyframe time index map to translate global lower bound index to local lower bound index. | |
virtual void | _collectKeyFrameTimes (std::vector< Real > &keyFrameTimes) |
Internal method to collect keyframe times, in unique, ordered format. | |
virtual KeyFrame * | createKeyFrame (Real timePos) |
Creates a new KeyFrame and adds it to this animation at the given time index. | |
unsigned short | getHandle (void) const |
Get the handle associated with this track. | |
virtual KeyFrame * | getKeyFrame (unsigned short index) const |
Returns the KeyFrame at the specified index. | |
virtual Real | getKeyFramesAtTime (const TimeIndex &timeIndex, KeyFrame **keyFrame1, KeyFrame **keyFrame2, unsigned short *firstKeyIndex=0) const |
Gets the 2 KeyFrame objects which are active at the time given, and the blend value between them. | |
virtual unsigned short | getNumKeyFrames (void) const |
Returns the number of keyframes in this animation. | |
Animation * | getParent () const |
Returns the parent Animation object for this track. | |
virtual void | removeAllKeyFrames (void) |
Removes all the KeyFrames from this track. | |
virtual void | removeKeyFrame (unsigned short index) |
Removes a KeyFrame by it's index. | |
virtual void | setListener (Listener *l) |
Set a listener for this track. | |
Specialised AnimationTrack for dealing with node transforms.
Constructor.
Ogre::NodeAnimationTrack::NodeAnimationTrack | ( | Animation * | parent, |
unsigned short | handle, | ||
Node * | targetNode | ||
) |
Constructor, associates with a Node.
|
virtual |
Destructor.
|
virtual |
Creates a new KeyFrame and adds it to this animation at the given time index.
timePos | The time from which this KeyFrame will apply. |
Returns a pointer to the associated Node object (if any).
Sets the associated Node object which will be automatically affected by calls to 'apply'.
|
virtual |
As the 'apply' method but applies to a specified Node instead of associated node.
Sets the method of rotation calculation.
Gets the method of rotation calculation.
|
virtual |
Gets a KeyFrame object which contains the interpolated transforms at the time index specified.
timeIndex | The time (in relation to the whole animation sequence) |
kf | Keyframe object to store results |
Implements Ogre::AnimationTrack.
|
virtual |
Applies an animation track to the designated target.
timeIndex | The time position in the animation to apply. |
weight | The influence to give to this track, 1.0 for full influence, less to blend with other animations. |
scale | The scale to apply to translations and scalings, useful for adapting an animation to a different size target. |
Implements Ogre::AnimationTrack.
Internal method used to tell the track that keyframe data has been changed, which may cause it to rebuild some internal data.
Reimplemented from Ogre::AnimationTrack.
|
virtual |
Returns the KeyFrame at the specified index.
Method to determine if this track has any KeyFrames which are doing anything useful - can be used to determine if this track can be optimised out.
Reimplemented from Ogre::AnimationTrack.
Optimise the current track by removing any duplicate keyframes.
Reimplemented from Ogre::AnimationTrack.
NodeAnimationTrack * Ogre::NodeAnimationTrack::_clone | ( | Animation * | newParent | ) | const |
Clone this track (internal use only)
Internal method to re-base the keyframes relative to a given keyframe.
Reimplemented from Ogre::AnimationTrack.