Developer Documentation
|
Abstract base class for the skin template, wrapping all template versions of the skin. More...
#include <ObjectTypes/Skeleton/BaseSkin.hh>
Classes | |
struct | DefaultPose |
Holds the skins default pose. More... | |
Public Types | |
enum | Method { M_LBS = 0, M_DBS = 1 } |
Possible deformation methods. More... | |
Properties | |
These structures store mesh properties used to make the mesh a skin. | |
typedef std::map< unsigned int, double > | SkinWeights |
Stores the joint weights per vertex. More... | |
Public Member Functions | |
BaseSkin (int _skeletonId) | |
Skinning | |
These methods are related to using a mesh as skin with this skeleton. | |
virtual void | attachSkin ()=0 |
virtual void | deformSkin ()=0 |
virtual void | deformSkin (const AnimationHandle &_hAni, Method _method=M_LBS)=0 |
virtual void | releaseSkin ()=0 |
Information about the attached skeleton | |
int | skeletonId () |
Public Member Functions inherited from PerObjectData | |
PerObjectData () | |
You have to provide your own constructor for your object. | |
virtual PerObjectData * | copyPerObjectData () |
Copy Function. More... | |
Private Attributes | |
int | skeleton_ |
Holds the associated skeleton. | |
Abstract base class for the skin template, wrapping all template versions of the skin.
Definition at line 67 of file BaseSkin.hh.
typedef std::map<unsigned int, double> BaseSkin::SkinWeights |
Stores the joint weights per vertex.
In general every joint can influence every vertex. In practice only a small number of joints manipulate a vertex. Therefore they are stored in a map using the joint identifier as key. The weights for one vertex are supposed to sum to one.
Definition at line 99 of file BaseSkin.hh.
enum BaseSkin::Method |
Possible deformation methods.
LBS = Linear Blend Skinning DBS = Dual Quaternion Blend Skinning
Definition at line 109 of file BaseSkin.hh.