Ogre::AnimationState Class Reference
Core » Animation

Represents the state of an animation and the weight of its influence. More...

`#include <OgreAnimationState.h>`

Inheritance diagram for Ogre::AnimationState:
[legend]

## Public Types

typedef vector< float >::type | BoneBlendMask
| Typedef for an array of float values used as a bone blend mask. More...

## Public Member Functions

| AnimationState (const String &animName, AnimationStateSet *parent, Real timePos, Real length, Real weight=1.0, bool enabled=false)
| Normal constructor with all params supplied. More...
| AnimationState (AnimationStateSet *parent, const AnimationState &rhs)
| Constructor to copy from an existing state with new parent. More...
virtual | ~AnimationState ()
void | _setBlendMask (const BoneBlendMask *blendMask)
| Set the blend mask. More...
void | _setBlendMaskData (const float *blendMaskData)
| Set the blend mask data (might be dangerous) More...
void | addTime (Real offset)
| Modifies the time position, adjusting for animation length. More...
void | copyStateFrom (const AnimationState &animState)
| Copies the states from another animation state, preserving the animation name (unlike operator=) but copying everything else. More...
void | createBlendMask (size_t blendMaskSizeHint, float initialWeight=1.0f)
| Create a new blend mask with the given number of entries. More...
void | destroyBlendMask ()
| Destroy the currently set blend mask. More...
const String & | getAnimationName () const
| Gets the name of the animation to which this state applies. More...
const BoneBlendMask * | getBlendMask () const
| Get the current blend mask (const version, may be 0) More...
float | getBlendMaskEntry (size_t boneHandle) const
| Get the weight for the bone identified by the given handle. More...
bool | getEnabled (void) const
| Returns true if this animation is currently enabled. More...
Real | getLength () const
| Gets the total length of this animation (may be shorter than whole animation) More...
bool | getLoop (void) const
| Gets whether or not this animation loops. More...
AnimationStateSet * | getParent (void) const
| Get the parent animation state set. More...
Real | getTimePosition (void) const
| Gets the time position for this animation. More...
Real | getWeight (void) const
| Gets the weight (influence) of this animation. More...
bool | hasBlendMask () const
| Return whether there is currently a valid blend mask set. More...
bool | hasEnded (void) const
| Returns true if the animation has reached the end and is not looping. More...
void | operator delete (void *ptr)
void | operator delete (void *ptr, void *)
void | operator delete (void *ptr, const char *, int, const char *)
void | operator delete[] (void *ptr)
void | operator delete[] (void *ptr, const char *, int, const char *)
void * | operator new (size_t sz, const char *file, int line, const char *func)
| operator new, with debug line info More...
void * | operator new (size_t sz)
void * | operator new (size_t sz, void *ptr)
| placement operator new More...
void * | operator new[] (size_t sz, const char *file, int line, const char *func)
| array operator new, with debug line info More...
void * | operator new[] (size_t sz)
bool | operator!= (const AnimationState &rhs) const
| Inequality operator. More...
bool | operator== (const AnimationState &rhs) const
| Equality operator. More...
void | setBlendMaskEntry (size_t boneHandle, float weight)
| Set the weight for the bone identified by the given handle. More...
void | setEnabled (bool enabled)
| Sets whether this animation is enabled. More...
void | setLength (Real len)
| Sets the total length of this animation (may be shorter than whole animation) More...
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. More...
void | setTimePosition (Real timePos)
| Sets the time position for this animation. More...
void | setWeight (Real weight)
| Sets the weight (influence) of this animation. More...

## Protected Attributes

String | mAnimationName
BoneBlendMask * | mBlendMask
| The blend mask (containing per bone weights) More...
bool | mEnabled
Real | mLength
bool | mLoop
AnimationStateSet * | mParent
Real | mTimePos
Real | mWeight

## Detailed Description

Represents the state of an animation and the weight of its influence.

Remarks
  Other classes can hold instances of this class to store the state of any animations they are using.

Definition at line 54 of file OgreAnimationState.h.

## Member Typedef Documentation

## BoneBlendMask

typedef vector<float>::type Ogre::AnimationState::BoneBlendMask

Typedef for an array of float values used as a bone blend mask.

Definition at line 59 of file OgreAnimationState.h.

## Constructor & Destructor Documentation

## AnimationState() [1/2]

Ogre::AnimationState::AnimationState | ( | const String & | animName,
|  | AnimationStateSet * | parent,
|  | Real | timePos,
|  | Real | length,
|  | Real | weight = `1.0`,
|  | bool | enabled = `false`
| ) |  |

Normal constructor with all params supplied.

Parameters

  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.

## AnimationState() [2/2]

Ogre::AnimationState::AnimationState | ( | AnimationStateSet * | parent,
|  | const AnimationState & | rhs
| ) |  |

Constructor to copy from an existing state with new parent.

## ~AnimationState()

virtual Ogre::AnimationState::~AnimationState | ( |  | ) |

virtual

## Member Function Documentation

## _setBlendMask()

void Ogre::AnimationState::_setBlendMask | ( | const BoneBlendMask * | blendMask | ) |

Set the blend mask.

The size of the array should match the number of entries the
  blend mask was created with.

Stick to the setBlendMaskEntry method if you don't know exactly what you're doing.

## _setBlendMaskData()

void Ogre::AnimationState::_setBlendMaskData | ( | const float * | blendMaskData | ) |

Set the blend mask data (might be dangerous)

The size of the array should match the number of entries the
  blend mask was created with.

Stick to the setBlendMaskEntry method if you don't know exactly what you're doing.

## addTime()

void Ogre::AnimationState::addTime | ( | Real | offset | ) |

Modifies the time position, adjusting for animation length.

Parameters

  offset | The amount of time, in seconds, to extend the animation.

Remarks
  This method loops at the edges if animation looping is enabled.

## copyStateFrom()

void Ogre::AnimationState::copyStateFrom | ( | const AnimationState & | animState | ) |

Copies the states from another animation state, preserving the animation name (unlike operator=) but copying everything else.

Parameters

  animState | Reference to animation state which will use as source.

## createBlendMask()

void Ogre::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'.

Parameters

  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)

## destroyBlendMask()

void Ogre::AnimationState::destroyBlendMask | ( |  | ) |

Destroy the currently set blend mask.

## getAnimationName()

const String& Ogre::AnimationState::getAnimationName | ( |  | ) | const

Gets the name of the animation to which this state applies.

## getBlendMask()

const BoneBlendMask* Ogre::AnimationState::getBlendMask | ( |  | ) | const

Get the current blend mask (const version, may be 0)

Definition at line 161 of file OgreAnimationState.h.

## getBlendMaskEntry()

float Ogre::AnimationState::getBlendMaskEntry | ( | size_t | boneHandle | ) | const

Get the weight for the bone identified by the given handle.

Definition at line 167 of file OgreAnimationState.h.

## getEnabled()

bool Ogre::AnimationState::getEnabled | ( | void |  | ) | const

Returns true if this animation is currently enabled.

## getLength()

Real Ogre::AnimationState::getLength | ( |  | ) | const

Gets the total length of this animation (may be shorter than whole animation)

## getLoop()

bool Ogre::AnimationState::getLoop | ( | void |  | ) | const

Gets whether or not this animation loops.

Definition at line 120 of file OgreAnimationState.h.

## getParent()

AnimationStateSet* Ogre::AnimationState::getParent | ( | void |  | ) | const

Get the parent animation state set.

Definition at line 129 of file OgreAnimationState.h.

## getTimePosition()

Real Ogre::AnimationState::getTimePosition | ( | void |  | ) | const

Gets the time position for this animation.

## getWeight()

Real Ogre::AnimationState::getWeight | ( | void |  | ) | const

Gets the weight (influence) of this animation.

## hasBlendMask()

bool Ogre::AnimationState::hasBlendMask | ( |  | ) | const

Return whether there is currently a valid blend mask set.

Definition at line 163 of file OgreAnimationState.h.

## hasEnded()

bool Ogre::AnimationState::hasEnded | ( | void |  | ) | const

Returns true if the animation has reached the end and is not looping.

## operator delete() [1/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr | ) |

inherited

Definition at line 96 of file OgreMemoryAllocatedObject.h.

## operator delete() [2/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | void * |
| ) |  |

inherited

Definition at line 102 of file OgreMemoryAllocatedObject.h.

## operator delete() [3/3]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 108 of file OgreMemoryAllocatedObject.h.

## operator delete[]() [1/2]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr | ) |

inherited

Definition at line 113 of file OgreMemoryAllocatedObject.h.

## operator delete[]() [2/2]

template<class Alloc >

void Ogre::AllocatedObject< Alloc >::operator delete[] | ( | void * | ptr,
|  | const char * | ,
|  | int | ,
|  | const char * |
| ) |  |

inherited

Definition at line 119 of file OgreMemoryAllocatedObject.h.

## operator new() [1/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func
| ) |  |

inherited

operator new, with debug line info

Definition at line 68 of file OgreMemoryAllocatedObject.h.

## operator new() [2/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz | ) |

inherited

Definition at line 73 of file OgreMemoryAllocatedObject.h.

## operator new() [3/3]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new | ( | size_t | sz,
|  | void * | ptr
| ) |  |

inherited

placement operator new

Definition at line 79 of file OgreMemoryAllocatedObject.h.

## operator new[]() [1/2]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz,
|  | const char * | file,
|  | int | line,
|  | const char * | func
| ) |  |

inherited

array operator new, with debug line info

Definition at line 86 of file OgreMemoryAllocatedObject.h.

## operator new[]() [2/2]

template<class Alloc >

void* Ogre::AllocatedObject< Alloc >::operator new[] | ( | size_t | sz | ) |

inherited

Definition at line 91 of file OgreMemoryAllocatedObject.h.

## operator!=()

bool Ogre::AnimationState::operator!= | ( | const AnimationState & | rhs | ) | const

Inequality operator.

## operator==()

bool Ogre::AnimationState::operator== | ( | const AnimationState & | rhs | ) | const

Equality operator.

## setBlendMaskEntry()

void Ogre::AnimationState::setBlendMaskEntry | ( | size_t | boneHandle,
|  | float | weight
| ) |  |

Set the weight for the bone identified by the given handle.

## setEnabled()

void Ogre::AnimationState::setEnabled | ( | bool | enabled | ) |

Sets whether this animation is enabled.

## setLength()

void Ogre::AnimationState::setLength | ( | Real | len | ) |

Sets the total length of this animation (may be shorter than whole animation)

## setLoop()

void Ogre::AnimationState::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.

Definition at line 118 of file OgreAnimationState.h.

## setTimePosition()

void Ogre::AnimationState::setTimePosition | ( | Real | timePos | ) |

Sets the time position for this animation.

## setWeight()

void Ogre::AnimationState::setWeight | ( | Real | weight | ) |

Sets the weight (influence) of this animation.

## Member Data Documentation

## mAnimationName

String Ogre::AnimationState::mAnimationName

protected

Definition at line 176 of file OgreAnimationState.h.

## mBlendMask

BoneBlendMask* Ogre::AnimationState::mBlendMask

protected

The blend mask (containing per bone weights)

Definition at line 174 of file OgreAnimationState.h.

## mEnabled

bool Ogre::AnimationState::mEnabled

protected

Definition at line 181 of file OgreAnimationState.h.

## mLength

Real Ogre::AnimationState::mLength

protected

Definition at line 179 of file OgreAnimationState.h.

## mLoop

bool Ogre::AnimationState::mLoop

protected

Definition at line 182 of file OgreAnimationState.h.

## mParent

AnimationStateSet* Ogre::AnimationState::mParent

protected

Definition at line 177 of file OgreAnimationState.h.

## mTimePos

Real Ogre::AnimationState::mTimePos

protected

Definition at line 178 of file OgreAnimationState.h.

## mWeight

Real Ogre::AnimationState::mWeight

protected

Definition at line 180 of file OgreAnimationState.h.

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

- OgreAnimationState.h

Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.