![]() |
OGRE-Next 3.0.0
Object-Oriented Graphics Rendering Engine
|
Represents the state of an animation and the weight of its influence. More...
#include <OgreAnimationState.h>
Inheritance diagram for Ogre::v1::AnimationState:Public Types | |
| typedef vector< float >::type | BoneBlendMask |
| Typedef for an array of float values used as a bone blend mask. | |
Public Member Functions | |
| AnimationState (AnimationStateSet *parent, const AnimationState &rhs) | |
| Constructor to copy from an existing state with new parent. | |
| AnimationState (const String &animName, AnimationStateSet *parent, Real timePos, Real length, Real weight=1.0, bool enabled=false) | |
| Normal constructor with all params supplied. | |
| virtual | ~AnimationState () |
| void | _setBlendMask (const BoneBlendMask *blendMask) |
| Set the blend mask. | |
| void | _setBlendMaskData (const float *blendMaskData) |
| Set the blend mask data (might be dangerous) | |
| void | addTime (Real offset) |
| Modifies the time position, adjusting for animation length. | |
| void | copyStateFrom (const AnimationState &animState) |
| Copies the states from another animation state, preserving the animation name (unlike operator=) but copying everything else. | |
| void | createBlendMask (size_t blendMaskSizeHint, float initialWeight=1.0f) |
| Create a new blend mask with the given number of entries. | |
| void | destroyBlendMask () |
| Destroy the currently set blend mask. | |
| const String & | getAnimationName () const |
| Gets the name of the animation to which this state applies. | |
| const BoneBlendMask * | getBlendMask () const |
| Get the current blend mask (const version, may be 0) | |
| float | getBlendMaskEntry (size_t boneHandle) const |
| Get the weight for the bone identified by the given handle. | |
| bool | getEnabled () const |
| Returns true if this animation is currently enabled. | |
| Real | getLength () const |
| Gets the total length of this animation (may be shorter than whole animation) | |
| bool | getLoop () const |
| Gets whether or not this animation loops. | |
| AnimationStateSet * | getParent () const |
| Get the parent animation state set. | |
| Real | getTimePosition () const |
| Gets the time position for this animation. | |
| Real | getWeight () const |
| Gets the weight (influence) of this animation. | |
| bool | hasBlendMask () const |
| Return whether there is currently a valid blend mask set. | |
| bool | hasEnded () const |
| Returns true if the animation has reached the end and is not looping. | |
| bool | operator!= (const AnimationState &rhs) const |
| Inequality operator. | |
| bool | operator== (const AnimationState &rhs) const |
| Equality operator. | |
| void | setBlendMaskEntry (size_t boneHandle, float weight) |
| Set the weight for the bone identified by the given handle. | |
| void | setEnabled (bool enabled) |
| Sets whether this animation is enabled. | |
| void | setLength (Real len) |
| Sets the total length of this animation (may be shorter than whole animation) | |
| void | setLoop (bool loop) |
| Sets whether or not an animation loops at the start and end of the animation if the time continues to be altered. | |
| void | setTimePosition (Real timePos) |
| Sets the time position for this animation. | |
| void | setWeight (Real weight) |
| Sets the weight (influence) of this animation. | |
Represents the state of an animation and the weight of its influence.
| typedef vector<float>::type Ogre::v1::AnimationState::BoneBlendMask |
Typedef for an array of float values used as a bone blend mask.
| Ogre::v1::AnimationState::AnimationState | ( | const String & | animName, |
| AnimationStateSet * | parent, | ||
| Real | timePos, | ||
| Real | length, | ||
| Real | weight = 1.0, | ||
| bool | enabled = false ) |
Normal constructor with all params supplied.
| animName | The name of this state. |
| parent | The parent AnimationStateSet that this state will belong to. |
| timePos | The position, in seconds, where this state will begin. |
| length | The length, in seconds, of this animation state. |
| weight | Weight to apply the animation state with. |
| enabled | Whether the animation state is enabled. |
Referenced by AnimationState(), copyStateFrom(), operator!=(), and operator==().
| Ogre::v1::AnimationState::AnimationState | ( | AnimationStateSet * | parent, |
| const AnimationState & | rhs ) |
Constructor to copy from an existing state with new parent.
References AnimationState().
|
virtual |
| void Ogre::v1::AnimationState::_setBlendMask | ( | const BoneBlendMask * | blendMask | ) |
Set the blend mask.
| void Ogre::v1::AnimationState::_setBlendMaskData | ( | const float * | blendMaskData | ) |
Set the blend mask data (might be dangerous)
| void Ogre::v1::AnimationState::addTime | ( | Real | offset | ) |
Modifies the time position, adjusting for animation length.
| offset | The amount of time, in seconds, to extend the animation. |
| void Ogre::v1::AnimationState::copyStateFrom | ( | const AnimationState & | animState | ) |
Copies the states from another animation state, preserving the animation name (unlike operator=) but copying everything else.
| animState | Reference to animation state which will use as source. |
References AnimationState().
| void Ogre::v1::AnimationState::createBlendMask | ( | size_t | blendMaskSizeHint, |
| float | initialWeight = 1.0f ) |
Create a new blend mask with the given number of entries.
In addition to assigning a single weight value to a skeletal animation, it may be desirable to assign animation weights per bone using a 'blend mask'.
| blendMaskSizeHint | The number of bones of the skeleton owning this AnimationState. |
| initialWeight | The value all the blend mask entries will be initialised with (negative to skip initialisation) |
| void Ogre::v1::AnimationState::destroyBlendMask | ( | ) |
Destroy the currently set blend mask.
| const String & Ogre::v1::AnimationState::getAnimationName | ( | ) | const |
Gets the name of the animation to which this state applies.
|
inline |
Get the current blend mask (const version, may be 0)
|
inline |
Get the weight for the bone identified by the given handle.
| bool Ogre::v1::AnimationState::getEnabled | ( | ) | const |
Returns true if this animation is currently enabled.
| Real Ogre::v1::AnimationState::getLength | ( | ) | const |
Gets the total length of this animation (may be shorter than whole animation)
|
inline |
Gets whether or not this animation loops.
|
inline |
Get the parent animation state set.
| Real Ogre::v1::AnimationState::getTimePosition | ( | ) | const |
Gets the time position for this animation.
| Real Ogre::v1::AnimationState::getWeight | ( | ) | const |
Gets the weight (influence) of this animation.
|
inline |
Return whether there is currently a valid blend mask set.
| bool Ogre::v1::AnimationState::hasEnded | ( | ) | const |
Returns true if the animation has reached the end and is not looping.
| bool Ogre::v1::AnimationState::operator!= | ( | const AnimationState & | rhs | ) | const |
Inequality operator.
References AnimationState().
| bool Ogre::v1::AnimationState::operator== | ( | const AnimationState & | rhs | ) | const |
Equality operator.
References AnimationState().
| void Ogre::v1::AnimationState::setBlendMaskEntry | ( | size_t | boneHandle, |
| float | weight ) |
Set the weight for the bone identified by the given handle.
| void Ogre::v1::AnimationState::setEnabled | ( | bool | enabled | ) |
Sets whether this animation is enabled.
| void Ogre::v1::AnimationState::setLength | ( | Real | len | ) |
Sets the total length of this animation (may be shorter than whole animation)
|
inline |
Sets whether or not an animation loops at the start and end of the animation if the time continues to be altered.
| void Ogre::v1::AnimationState::setTimePosition | ( | Real | timePos | ) |
Sets the time position for this animation.
| void Ogre::v1::AnimationState::setWeight | ( | Real | weight | ) |
Sets the weight (influence) of this animation.