OGRE 2.1
Object-Oriented Graphics Rendering Engine
|
Class representing a Bone in the join hierarchy of a skeleton. More...
#include <OgreBone.h>
Public Types | |
typedef vector< Bone * >::type | BoneVec |
typedef vector< TagPoint * >::type | TagPointVec |
Public Member Functions | |
Bone () | |
virtual | ~Bone () |
void | _deinitialize (bool debugCheckLifoOrder=true) |
Matrix4 | _getDerivedTransform (void) const |
Gets the derived transform in world space. | |
FORCEINLINE const SimpleMatrixAf4x3 & | _getFullTransform (void) const |
Gets the full transformation matrix for this node. | |
const SimpleMatrixAf4x3 & | _getFullTransformUpdated (void) |
@See _getDerivedScaleUpdated remarks. | |
FORCEINLINE const SimpleMatrixAf4x3 & | _getLocalSpaceTransform (void) const |
Gets the transformation matrix for this bone in local space (i.e. | |
BoneTransform & | _getTransform () |
Returns a direct access to the Transform state. | |
void | _initialize (IdType id, BoneMemoryManager *boneMemoryManager, Bone *parent, ArrayMatrixAf4x3 const *RESTRICT_ALIAS reverseBind) |
void | _memoryRebased (void) |
Internal use. Called from BoneMemoryManager's rebases (i.e. cleanups, grows) | |
void | _setNodeParent (Node *nodeParent) |
Sets a regular Node to be parent of this Bone. | |
void | _setReverseBindPtr (const ArrayMatrixAf4x3 *ptr) |
void | addTagPoint (TagPoint *tagPoint) |
Makes the TagPoint child of this Bone. | |
Bone * | getChild (size_t index) |
Gets a pointer to a child node. | |
const Bone * | getChild (size_t index) const |
const BoneVec & | getChildren (void) |
Retrieves the container for efficiently iterating through all children of this bone. | |
uint16 | getDepthLevel () const |
Returns how deep in the hierarchy we are (eg. 0 -> root node, 1 -> child of root) | |
IdType | getId () const |
Get the unique id of this object. | |
bool | getInheritOrientation (void) const |
Returns true if this node is affected by orientation applied to the parent node. | |
bool | getInheritScale (void) const |
Returns true if this node is affected by scaling factors applied to the parent node. | |
const String & | getName (void) const |
Returns the name of the node. | |
size_t | getNumChildren (void) const |
Reports the number of child nodes under this one. | |
Quaternion | getOrientation () const |
Returns a quaternion representing the nodes orientation. | |
Bone * | getParent (void) const |
Gets this Bones's parent (NULL if this is the root). | |
Vector3 | getPosition (void) const |
Gets the position of the node relative to its parent. | |
Vector3 | getScale (void) const |
Gets the scale of the node relative to its parent. | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete (void *ptr, void *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info | |
void * | operator new (size_t sz, void *ptr) |
placement operator new | |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info | |
bool | operator() (const IdObject &left, const IdObject &right) |
bool | operator() (const IdObject *left, const IdObject *right) |
void | removeTagPoint (TagPoint *tagPoint) |
void | setInheritOrientation (bool inherit) |
Tells the Bone whether it should inherit orientation from it's parent node. | |
void | setInheritScale (bool inherit) |
Tells the node whether it should inherit scaling factors from it's parent node. | |
void | setName (const String &name) |
Sets a custom name for this node. Doesn't have to be unique. | |
void | setOrientation (Quaternion q) |
Sets a given orientation in local space (ie. | |
void | setPosition (const Vector3 &pos) |
Sets the position of the node relative to its parent. | |
void | setScale (const Vector3 &pos) |
Sets the scale of the node relative to its parent. | |
Static Public Member Functions | |
static void | updateAllTransforms (const size_t numNodes, BoneTransform t, ArrayMatrixAf4x3 const *RESTRICT_ALIAS reverseBind, size_t numBinds) |
TODO. | |
Public Attributes | |
size_t | mGlobalIndex |
Index in the vector holding this node reference (could be our parent node, or a global array tracking all created nodes to avoid memory leaks). | |
size_t | mParentIndex |
Index in the vector holding this node reference (could be our parent node, or a global array tracking all created nodes to avoid memory leaks). | |
Class representing a Bone in the join hierarchy of a skeleton.
typedef vector<Bone*>::type Ogre::Bone::BoneVec |
typedef vector<TagPoint*>::type Ogre::Bone::TagPointVec |
Ogre::Bone::Bone | ( | ) |
|
virtual |
Gets the derived transform in world space.
|
inline |
Gets the full transformation matrix for this node.
References Ogre::BoneTransform::mFinalTransform, and Ogre::BoneTransform::mIndex.
const SimpleMatrixAf4x3 & Ogre::Bone::_getFullTransformUpdated | ( | void | ) |
@See _getDerivedScaleUpdated remarks.
@See _getFullTransform
|
inline |
Gets the transformation matrix for this bone in local space (i.e.
as if the skeleton wasn't attached to a SceneNode).
References Ogre::BoneTransform::mDerivedTransform, and Ogre::BoneTransform::mIndex.
|
inline |
Returns a direct access to the Transform state.
void Ogre::Bone::_initialize | ( | IdType | id, |
BoneMemoryManager * | boneMemoryManager, | ||
Bone * | parent, | ||
ArrayMatrixAf4x3 const *RESTRICT_ALIAS | reverseBind | ||
) |
Internal use. Called from BoneMemoryManager's rebases (i.e. cleanups, grows)
Sets a regular Node to be parent of this Bone.
DO NOT USE THIS FUNCTION IF YOU DON'T KNOW WHAT YOU'RE DOING. If you want to use a regular Node to control a bone,
|
inline |
Retrieves the container for efficiently iterating through all children of this bone.
|
inline |
Returns how deep in the hierarchy we are (eg. 0 -> root node, 1 -> child of root)
|
inlineinherited |
Get the unique id of this object.
Returns true if this node is affected by orientation applied to the parent node.
Returns true if this node is affected by scaling factors applied to the parent node.
Reports the number of child nodes under this one.
|
inline |
Returns a quaternion representing the nodes orientation.
Gets this Bones's parent (NULL if this is the root).
Gets the position of the node relative to its parent.
Gets the scale of the node relative to its parent.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
operator new, with debug line info
placement operator new
|
inlineinherited |
|
inlineinherited |
array operator new, with debug line info
Tells the Bone whether it should inherit orientation from it's parent node.
inherit | If true, this node's orientation will be affected by its parent's orientation. If false, it will not be affected. |
Tells the node whether it should inherit scaling factors from it's parent node.
inherit | If true, this node's scale will be affected by its parent's scale. If false, it will not be affected. |
Sets a custom name for this node. Doesn't have to be unique.
|
inline |
Sets a given orientation in local space (ie.
relative to its parent)
Sets the position of the node relative to its parent.
Sets the scale of the node relative to its parent.
|
static |
TODO.
size_t Ogre::Bone::mGlobalIndex |
Index in the vector holding this node reference (could be our parent node, or a global array tracking all created nodes to avoid memory leaks).
Used for O(1) removals.
size_t Ogre::Bone::mParentIndex |
Index in the vector holding this node reference (could be our parent node, or a global array tracking all created nodes to avoid memory leaks).
Used for O(1) removals.