# Home    # nevrax.com   
Nevrax
Nevrax.org
#News
#Mailing-list
#Documentation
#CVS
#Bugs
#License
Docs
 
Documentation  
Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Search  

NL3D::CLodCharacterBuilder Class Reference

A tool class used to build a CLodCharacterShape Use it by first calling setShape(), then add animations to it, and finally get result with getLodShape. More...

#include <lod_character_builder.h>

List of all members.

Public Methods

 CLodCharacterBuilder ()
 Constructor. More...

 ~CLodCharacterBuilder ()
void setShape (const std::string &name, CSkeletonShape *skeletonShape, CLodCharacterShapeBuild *lodBuild)
 init process with the Mesh and the SkeletonShape to use. More...

void addAnim (const char *animName, CAnimation *animation, float frameRate)
 add an animation to the process. More...

const CLodCharacterShapegetLodShape () const
 return the lod shape in its current state. More...


Private Methods

void applySkin (CSkeletonModel *skeleton, CVector *dstVertices)

Private Attributes

CLodCharacterShape _LodCharacterShape
NLMISC::CSmartPtr< CSkeletonShape_SkeletonShape
CLodCharacterShapeBuild_LodBuild
std::vector< uint_BoneRemap
CScene_TmpScene


Detailed Description

A tool class used to build a CLodCharacterShape Use it by first calling setShape(), then add animations to it, and finally get result with getLodShape.

Author:
Lionel Berenguier , Nevrax France
Date:
2002

Definition at line 49 of file lod_character_builder.h.


Constructor & Destructor Documentation

NL3D::CLodCharacterBuilder::CLodCharacterBuilder  
 

Constructor.

Definition at line 45 of file lod_character_builder.cpp.

References _LodBuild, _SkeletonShape, and _TmpScene.

NL3D::CLodCharacterBuilder::~CLodCharacterBuilder  
 

Definition at line 52 of file lod_character_builder.cpp.

References _TmpScene.


Member Function Documentation

void NL3D::CLodCharacterBuilder::addAnim const char *    animName,
CAnimation   animation,
float    frameRate
 

add an animation to the process.

Parameters:
animName  is the name of the animation, used as a key to receover animations in the CLodCharacterShape built
animation  is the animation to bake/over sample. NB: the animation is deleted at the end of addAnim
frameRate  is the desired overSampling rate. eg: 20 frame per second.

Definition at line 118 of file lod_character_builder.cpp.

References _LodCharacterShape, _SkeletonShape, _TmpScene, applySkin, min, and nlassert.

void NL3D::CLodCharacterBuilder::applySkin CSkeletonModel   skeleton,
CVector *    dstVertices
[private]
 

Definition at line 206 of file lod_character_builder.cpp.

References _BoneRemap, _LodBuild, and NL3D_MESH_SKINNING_MAX_MATRIX.

Referenced by addAnim.

const CLodCharacterShape& NL3D::CLodCharacterBuilder::getLodShape   const [inline]
 

return the lod shape in its current state.

Definition at line 75 of file lod_character_builder.h.

References _LodCharacterShape.

void NL3D::CLodCharacterBuilder::setShape const std::string &    name,
CSkeletonShape   skeletonShape,
CLodCharacterShapeBuild   lodBuild
 

init process with the Mesh and the SkeletonShape to use.

NB: nlWarnings may occurs if don't find bones used by lodBuild, in the skeletonShape. In this case, root bone 0 of the skeleton shape is used.

Parameters:
name  is the name to give to the shape
skeletonShape  the skeleton used for animation. Ptr is handled by the builder as a smartPtr.
lodBuild  the mesh information. Ptr is hold by the builder, but not deleted

Definition at line 64 of file lod_character_builder.cpp.

References _BoneRemap, _LodBuild, _LodCharacterShape, _SkeletonShape, _TmpScene, nlassert, and nlwarning.


Member Data Documentation

std::vector<uint> NL3D::CLodCharacterBuilder::_BoneRemap [private]
 

Definition at line 84 of file lod_character_builder.h.

Referenced by applySkin, and setShape.

CLodCharacterShapeBuild* NL3D::CLodCharacterBuilder::_LodBuild [private]
 

Definition at line 83 of file lod_character_builder.h.

Referenced by applySkin, CLodCharacterBuilder, and setShape.

CLodCharacterShape NL3D::CLodCharacterBuilder::_LodCharacterShape [private]
 

Definition at line 80 of file lod_character_builder.h.

Referenced by addAnim, getLodShape, and setShape.

NLMISC::CSmartPtr<CSkeletonShape> NL3D::CLodCharacterBuilder::_SkeletonShape [private]
 

Definition at line 82 of file lod_character_builder.h.

Referenced by addAnim, CLodCharacterBuilder, and setShape.

CScene* NL3D::CLodCharacterBuilder::_TmpScene [private]
 

Definition at line 87 of file lod_character_builder.h.

Referenced by addAnim, CLodCharacterBuilder, setShape, and ~CLodCharacterBuilder.


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