1 #ifndef OPENMW_COMPONENTS_NIFOSG_SKELETON_H
2 #define OPENMW_COMPONENTS_NIFOSG_SKELETON_H
26 void update(
const osg::Matrixf* parentMatrixInSkeletonSpace);
45 Bone* getBone(
const std::string&
name);
48 void updateBoneMatrices(
unsigned int traversalNumber);
68 typedef std::map<std::string, std::pair<osg::NodePath, osg::MatrixTransform*> >
BoneCache;
void setActive(bool active)
Definition: skeleton.cpp:137
virtual void childInserted(unsigned int)
Definition: skeleton.cpp:165
bool getActive() const
Definition: skeleton.cpp:142
std::map< std::string, std::pair< osg::NodePath, osg::MatrixTransform * > > BoneCache
Definition: skeleton.hpp:68
Handles the bone matrices for any number of child RigGeometries.
Definition: skeleton.hpp:36
BoneCache mBoneCache
Definition: skeleton.hpp:69
void operator=(const Bone &)
bool mNeedToUpdateBoneMatrices
Definition: skeleton.hpp:72
void traverse(osg::NodeVisitor &nv)
Definition: skeleton.cpp:155
void update(const osg::Matrixf *parentMatrixInSkeletonSpace)
Update the skeleton-space matrix of this bone and all its children.
Definition: skeleton.cpp:187
bool mBoneCacheInit
Definition: skeleton.hpp:70
Bone()
Definition: skeleton.cpp:175
bool mTraversedEvenFrame
Definition: skeleton.hpp:77
void markDirty()
Definition: skeleton.cpp:147
std::vector< Bone * > mChildren
Definition: skeleton.hpp:23
bool mTraversedOddFrame
Definition: skeleton.hpp:78
osg::MatrixTransform * mNode
Definition: skeleton.hpp:21
Defines a Bone hierarchy, used for updating of skeleton-space bone matrices.
Definition: skeleton.hpp:13
~Bone()
Definition: skeleton.cpp:180
bool mActive
Definition: skeleton.hpp:74
osg::Matrixf mMatrixInSkeletonSpace
Definition: skeleton.hpp:19
unsigned int mLastFrameNumber
Definition: skeleton.hpp:76
Skeleton()
Definition: skeleton.cpp:36
std::auto_ptr< Bone > mRootBone
Definition: skeleton.hpp:66
virtual void childRemoved(unsigned int, unsigned int)
Definition: skeleton.cpp:170
const char * name
Definition: crashcatcher.cpp:59