The Nebula Device 3: Characters::CharacterSkeleton Class Reference

The Nebula Device 3

Characters::CharacterSkeleton Class Reference

#include <characterskeleton.h>


Detailed Description

Contains the skeleton data of a character which is shared between all instances of the character.

(C) 2008 Radon Labs GmbH

Public Member Functions

 CharacterSkeleton ()
 constructor
 ~CharacterSkeleton ()
 destructor
void Setup (SizeT numJoints)
 setup the skeleton
void SetupJoint (IndexT jointIndex, IndexT parentJointIndex, const Math::point &poseTranslation, const Math::quaternion &poseRotation, const Math::vector &poseScale, const Util::StringAtom &name)
 setup a joint in the skeleton
void Discard ()
 discard the skeleton
bool IsValid () const
 return true if object has been setup
SizeT GetNumJoints () const
 get number of joints in the skeleton
const CharacterJointGetJoint (IndexT index) const
 access to a joint in the skeleton
IndexT GetJointIndexByName (const Util::StringAtom &jointName)
 get a joint index by name, returns InvalidIndex, if joint not found
const Util::FixedArray< Math::matrix44 > & GetInvPoseMatrixArray () const
 get the invPoseMatrixArray (contains inverse joint pose matrices)
const Util::FixedArray< Math::float4 > & GetDefaultSamplesArray () const
 get pointer to default samples if no valid anim is set on character

Member Function Documentation

const Util::FixedArray< Math::float4 > & Characters::CharacterSkeleton::GetDefaultSamplesArray (  )  const [inline]

get pointer to default samples if no valid anim is set on character

Get pointer to the default samples array. This is used if no animation is set on the character as input to the skeleton evaluation. Format is always translation, rotation, scale, velocity.