diff options
Diffstat (limited to '')
-rw-r--r-- | docs/doxygen/nel/a02801.html | 1357 |
1 files changed, 1357 insertions, 0 deletions
diff --git a/docs/doxygen/nel/a02801.html b/docs/doxygen/nel/a02801.html new file mode 100644 index 00000000..3fc1e207 --- /dev/null +++ b/docs/doxygen/nel/a02801.html @@ -0,0 +1,1357 @@ +<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> +<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> +<title>NeL: NL3D::CLodCharacterShape class Reference</title> +<link href="doxygen.css" rel="stylesheet" type="text/css"> +</head><body> +<!-- Generated by Doxygen 1.3.6 --> +<div class="qindex"> <form class="search" action="search.php" method="get"> +<a class="qindex" href="main.html">Main Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical List</a> | <a class="qindex" href="annotated.html">Data Structures</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="namespacemembers.html">Namespace Members</a> | <a class="qindex" href="functions.html">Data Fields</a> | <a class="qindex" href="globals.html">Globals</a> | <a class="qindex" href="pages.html">Related Pages</a> | <span class="search"><u>S</u>earch for <input class="search" type="text" name="query" value="" size="20" accesskey="s"/></span></form></div> +<h1>NL3D::CLodCharacterShape Class Reference</h1><code>#include <<a class="el" href="a05938.html">lod_character_shape.h</a>></code> +<p> +<hr><a name="_details"></a><h2>Detailed Description</h2> +A very Small Shape with anims encoded as Key Meshes. Used for Lod of skinned meshes NB: normals are not skinned (for anim size consideration). <dl compact><dt><b>Author:</b></dt><dd>Lionel Berenguier <p> +Nevrax France </dd></dl> +<dl compact><dt><b>Date:</b></dt><dd>2002 </dd></dl> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00130">130</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>.<table border=0 cellpadding=0 cellspacing=0> +<tr><td></td></tr> +<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>bool </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea0">addAnim</a> (const <a class="el" href="a02803.html">CAnimBuild</a> &animBuild)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea1">buildMesh</a> (const std::string &name, const <a class="el" href="a02808.html">CLodCharacterShapeBuild</a> &lodBuild)</td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea2">CLodCharacterShape</a> ()</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Constructor. <a href="#NL3D_1_1CLodCharacterShapea2"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a14">sint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea3">getAnimIdByName</a> (const std::string &name) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get the animId from a name. -1 if not found <a href="#NL3D_1_1CLodCharacterShapea3"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a02805.html">CVector3s</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea4">getAnimKey</a> (<a class="el" href="a04558.html#a15">uint</a> animId, <a class="el" href="a05363.html#a367">TGlobalAnimationTime</a> time, bool wrapMode, <a class="el" href="a03128.html">CVector</a> &unPackScaleFactor) const </td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a14">sint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea5">getBoneIdByName</a> (const std::string &name) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get a bone id, according to its name. -1 if not found <a href="#NL3D_1_1CLodCharacterShapea5"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>const std::string & </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea6">getName</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Get name of this lod. <a href="#NL3D_1_1CLodCharacterShapea6"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a03128.html">CVector</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea7">getNormals</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get a ptr to the triangles indices <a href="#NL3D_1_1CLodCharacterShapea7"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea8">getNumBones</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get the number of bones <a href="#NL3D_1_1CLodCharacterShapea8"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea9">getNumTriangles</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get the number of triangles of this mesh <a href="#NL3D_1_1CLodCharacterShapea9"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a15">uint</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea10">getNumVertices</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get the number of vertices of this mesh <a href="#NL3D_1_1CLodCharacterShapea10"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a04558.html#a11">uint32</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea11">getTriangleArray</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get a ptr to the triangles indices <a href="#NL3D_1_1CLodCharacterShapea11"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="a03640.html">CUV</a> * </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea12">getUVs</a> () const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">get a ptr on the UVs. <a href="#NL3D_1_1CLodCharacterShapea12"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea13">serial</a> (<a class="el" href="a02270.html">NLMISC::IStream</a> &f)</td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">serial this shape <a href="#NL3D_1_1CLodCharacterShapea13"></a><br><br></td></tr> +<tr><td colspan="2"><div class="groupHeader">Vertex per Bone AlphaTesting</div></td></tr> +<tr><td colspan="2"><div class="groupText">This system is used for example to remove weapon of a Lod, using AlphaTesting (ie the polygons of the weapons are still drawn, but with alpha==0 => invisible) <br><br></div></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapez354_0">addBoneAlpha</a> (<a class="el" href="a04558.html#a15">uint</a> boneId, std::vector< <a class="el" href="a04558.html#a7">uint8</a> > &tmpAlphas) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Add a bone alpha influence to tmpAlpha. <a href="#NL3D_1_1CLodCharacterShapez354_0"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>void </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapez354_1">startBoneAlpha</a> (std::vector< <a class="el" href="a04558.html#a7">uint8</a> > &tmpAlphas) const </td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">init the process by resize-ing a tmp uint8 vector of <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea10">getNumVertices()</a> size, and reset to 0 <a href="#NL3D_1_1CLodCharacterShapez354_1"></a><br><br></td></tr> +<tr><td colspan=2><br><h2>Private Types</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>typedef TStrIdMap::const_iterator </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey0">CstItStrIdMap</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>typedef TStrIdMap::iterator </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey1">ItStrIdMap</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>typedef std::map< std::string,<br> + <a class="el" href="a04558.html#a11">uint32</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey2">TStrIdMap</a></td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">Map name To Id. <a href="#NL3D_1_1CLodCharacterShapey2"></a><br><br></td></tr> +<tr><td colspan=2><br><h2>Private Attributes</h2></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey2">TStrIdMap</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper0">_AnimMap</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a02802.html">CAnim</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper1">_Anims</a></td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">List of animation. <a href="#NL3D_1_1CLodCharacterShaper1"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey2">TStrIdMap</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper2">_BoneMap</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a02804.html">CBoneInfluence</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a></td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">List of bones and vertices they influence. <a href="#NL3D_1_1CLodCharacterShaper3"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>std::string </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper4">_Name</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a03128.html">CVector</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper5">_Normals</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper6">_NumTriangles</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="a04558.html#a11">uint32</a> </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper7">_NumVertices</a></td></tr> + +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a04558.html#a11">uint32</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper8">_TriangleIndices</a></td></tr> + +<tr><td class="mdescLeft"> </td><td class="mdescRight">numTriangles * 3. <a href="#NL3D_1_1CLodCharacterShaper8"></a><br><br></td></tr> +<tr><td class="memItemLeft" nowrap align=right valign=top>std::vector< <a class="el" href="a03640.html">CUV</a> > </td><td class="memItemRight" valign=bottom><a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper9">_UVs</a></td></tr> + +</table> +<hr><h2>Member Typedef Documentation</h2> +<a class="anchor" name="NL3D_1_1CLodCharacterShapey0" doxytag="NL3D::CLodCharacterShape::CstItStrIdMap" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> typedef TStrIdMap::const_iterator <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey0">NL3D::CLodCharacterShape::CstItStrIdMap</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00278">278</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapey1" doxytag="NL3D::CLodCharacterShape::ItStrIdMap" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> typedef TStrIdMap::iterator <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey1">NL3D::CLodCharacterShape::ItStrIdMap</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00277">277</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapey2" doxytag="NL3D::CLodCharacterShape::TStrIdMap" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> typedef std::map<std::string, <a class="el" href="a04558.html#a11">uint32</a>> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey2">NL3D::CLodCharacterShape::TStrIdMap</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Map name To Id. +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00276">276</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. </td> + </tr> +</table> +<hr><h2>Constructor & Destructor Documentation</h2> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea2" doxytag="NL3D::CLodCharacterShape::CLodCharacterShape" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> NL3D::CLodCharacterShape::CLodCharacterShape </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Constructor. +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00330">330</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00283">_NumTriangles</a>, and <a class="el" href="a05938.html#l00282">_NumVertices</a>. +<p> +<div class="fragment"><pre>00331 { +00332 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper7">_NumVertices</a>= 0; +00333 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper6">_NumTriangles</a>= 0; +00334 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Member Function Documentation</h2> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea0" doxytag="NL3D::CLodCharacterShape::addAnim" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> bool NL3D::CLodCharacterShape::addAnim </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const <a class="el" href="a02803.html">CAnimBuild</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>animBuild</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Add an animation. many nlAssert to verify array size etc... return false, if same AnimName exist. NB: the entire animation is compressed to <a class="el" href="a02805.html">CVector3s</a> internally. +<p> +Definition at line <a class="el" href="a05937.html#l00411">411</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00300">_AnimMap</a>, <a class="el" href="a05938.html#l00297">_Anims</a>, <a class="el" href="a05938.html#l00282">_NumVertices</a>, <a class="el" href="a05938.html#l00142">NL3D::CLodCharacterShape::CAnimBuild::AnimLength</a>, <a class="el" href="a05938.html#l00238">NL3D::CLodCharacterShape::CAnim::AnimLength</a>, <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a05937.html#l00541">getAnimIdByName()</a>, <a class="el" href="a05938.html#l00244">NL3D::CLodCharacterShape::CAnim::Keys</a>, <a class="el" href="a05938.html#l00145">NL3D::CLodCharacterShape::CAnimBuild::Keys</a>, <a class="el" href="a06682.html#l00192">NLMISC::CVector::maxof()</a>, <a class="el" href="a05938.html#l00234">NL3D::CLodCharacterShape::CAnim::Name</a>, <a class="el" href="a05938.html#l00138">NL3D::CLodCharacterShape::CAnimBuild::Name</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05938.html#l00140">NL3D::CLodCharacterShape::CAnimBuild::NumKeys</a>, <a class="el" href="a05938.html#l00236">NL3D::CLodCharacterShape::CAnim::NumKeys</a>, <a class="el" href="a05938.html#l00239">NL3D::CLodCharacterShape::CAnim::OOAnimLength</a>, <a class="el" href="a05981.html#l00097">sint16</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05938.html#l00241">NL3D::CLodCharacterShape::CAnim::UnPackScaleFactor</a>, <a class="el" href="a05646.html#l00237">v</a>, <a class="el" href="a05938.html#l00151">NL3D::CLodCharacterShape::CVector3s::x</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::x</a>, <a class="el" href="a06684.html#l00047">NLMISC::CVectorD::x</a>, <a class="el" href="a05938.html#l00151">NL3D::CLodCharacterShape::CVector3s::y</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::y</a>, <a class="el" href="a06684.html#l00047">NLMISC::CVectorD::y</a>, <a class="el" href="a05938.html#l00151">NL3D::CLodCharacterShape::CVector3s::z</a>, <a class="el" href="a06673.html#l00051">NLMISC::CVector::z</a>, and <a class="el" href="a06684.html#l00047">NLMISC::CVectorD::z</a>. +<p> +Referenced by <a class="el" href="a05931.html#l00111">NL3D::CLodCharacterBuilder::addAnim()</a>. +<p> +<div class="fragment"><pre>00412 { +00413 <span class="comment">// first, verify don't exist.</span> +00414 <span class="keywordflow">if</span>(<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShapea3">getAnimIdByName</a>(animBuild.Name)!=-1) +00415 <span class="keywordflow">return</span> <span class="keyword">false</span>; +00416 +00417 <span class="comment">// build basics of the animation</span> +00418 CAnim dstAnim; +00419 dstAnim.Name= animBuild.Name; +00420 dstAnim.AnimLength= animBuild.AnimLength; +00421 <span class="comment">// Possible to have an Anim with just one key. setup an epsilon for animLength if 0.</span> +00422 <span class="keywordflow">if</span>(dstAnim.AnimLength<=0) +00423 dstAnim.AnimLength= 0.001f; +00424 dstAnim.OOAnimLength= 1.0f / animBuild.AnimLength; +00425 dstAnim.NumKeys= animBuild.NumKeys; +00426 <span class="comment">// verify size of the array</span> +00427 <a class="code" href="a04199.html#a6">nlassert</a>(dstAnim.NumKeys>0); +00428 <a class="code" href="a04199.html#a6">nlassert</a>(dstAnim.NumKeys * _NumVertices == animBuild.Keys.size()); +00429 <span class="comment">// resize dest array</span> +00430 dstAnim.Keys.resize(animBuild.Keys.size()); +00431 +00432 +00433 <span class="comment">// Pack animation. 1st pass: compute max size over the animation vertices</span> +00434 <a class="code" href="a04558.html#a15">uint</a> i; +00435 <span class="comment">// minimum shape size is , say, 1 cm :)</span> +00436 CVector maxSize(0.01f, 0.01f, 0.01f); +00437 <span class="keywordflow">for</span>(i=0;i<animBuild.Keys.size();i++) +00438 { +00439 <span class="comment">// take the maxSize of the abs values</span> +00440 maxSize.maxof(maxSize, -animBuild.Keys[i]); +00441 maxSize.maxof(maxSize, animBuild.Keys[i]); +00442 } +00443 +00444 <span class="comment">// compute the UnPackScaleFactor ie maxSize, to be multiplied by max Abs value of a sint16</span> +00445 dstAnim.UnPackScaleFactor= maxSize * (1.0f/32767); +00446 +00447 <span class="comment">// Pack animation. 2st pass: pack.</span> +00448 <a class="code" href="a03664.html">CVectorD</a> packScaleFactor; +00449 packScaleFactor.<a class="code" href="a03664.html#NLMISC_1_1CVectorDo0">x</a>= 1.0 / dstAnim.UnPackScaleFactor.x; +00450 packScaleFactor.<a class="code" href="a03664.html#NLMISC_1_1CVectorDo1">y</a>= 1.0 / dstAnim.UnPackScaleFactor.y; +00451 packScaleFactor.<a class="code" href="a03664.html#NLMISC_1_1CVectorDo2">z</a>= 1.0 / dstAnim.UnPackScaleFactor.z; +00452 <span class="comment">// For all key vertices</span> +00453 <span class="keywordflow">for</span>(i=0;i<animBuild.Keys.size();i++) +00454 { +00455 CVector <a class="code" href="a04223.html#a576">v</a>= animBuild.Keys[i]; +00456 CVector3s &dstV= dstAnim.Keys[i]; +00457 +00458 <span class="comment">// compress</span> +00459 <a class="code" href="a04223.html#a576">v</a>.x= float(<a class="code" href="a04223.html#a576">v</a>.x*packScaleFactor.<a class="code" href="a03664.html#NLMISC_1_1CVectorDo0">x</a>); +00460 <a class="code" href="a04223.html#a576">v</a>.y= float(<a class="code" href="a04223.html#a576">v</a>.y*packScaleFactor.<a class="code" href="a03664.html#NLMISC_1_1CVectorDo1">y</a>); +00461 <a class="code" href="a04223.html#a576">v</a>.z= float(<a class="code" href="a04223.html#a576">v</a>.z*packScaleFactor.<a class="code" href="a03664.html#NLMISC_1_1CVectorDo2">z</a>); +00462 <span class="comment">// clamp to sint16 limits (for float precision problems).</span> +00463 <a class="code" href="a05378.html#a374">clamp</a>(<a class="code" href="a04223.html#a576">v</a>.x, -32767, 32767); +00464 <a class="code" href="a05378.html#a374">clamp</a>(<a class="code" href="a04223.html#a576">v</a>.y, -32767, 32767); +00465 <a class="code" href="a05378.html#a374">clamp</a>(<a class="code" href="a04223.html#a576">v</a>.z, -32767, 32767); +00466 <span class="comment">// get into the vector3s</span> +00467 dstV.x= (<a class="code" href="a04558.html#a8">sint16</a>)floor(<a class="code" href="a04223.html#a576">v</a>.x); +00468 dstV.y= (<a class="code" href="a04558.html#a8">sint16</a>)floor(<a class="code" href="a04223.html#a576">v</a>.y); +00469 dstV.z= (<a class="code" href="a04558.html#a8">sint16</a>)floor(<a class="code" href="a04223.html#a576">v</a>.z); +00470 } +00471 +00472 +00473 <span class="comment">// Add the anim to the array, and add an entry to the map</span> +00474 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper1">_Anims</a>.push_back(dstAnim); +00475 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper0">_AnimMap</a>.insert(make_pair(dstAnim.Name, <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper1">_Anims</a>.size()-1)); +00476 +00477 <span class="keywordflow">return</span> <span class="keyword">true</span>; +00478 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapez354_0" doxytag="NL3D::CLodCharacterShape::addBoneAlpha" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CLodCharacterShape::addBoneAlpha </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>boneId</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>std::vector< <a class="el" href="a04558.html#a7">uint8</a> > & </td> + <td class="mdname" nowrap> <em>tmpAlphas</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Add a bone alpha influence to tmpAlpha. +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00641">641</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00288">_Bones</a>, <a class="el" href="a05938.html#l00270">NL3D::CLodCharacterShape::CBoneInfluence::InfVertices</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05938.html#l00252">NL3D::CLodCharacterShape::CVertexInf::VertexId</a>. +<p> +Referenced by <a class="el" href="a06393.html#l01043">NL3D::CSkeletonModel::computeCLodVertexAlpha()</a>. +<p> +<div class="fragment"><pre>00642 { +00643 <span class="comment">// Yoyo: This is an error to not have the same skeleton that the one stored in the lod shape. But must not crash</span> +00644 <span class="keywordflow">if</span>(boneId>=<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a>.size()) +00645 <span class="keywordflow">return</span>; +00646 <span class="keyword">const</span> CBoneInfluence &bone= <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a>[boneId]; +00647 +00648 <span class="comment">// for all vertices influenced by this bone, must set the alpha to full</span> +00649 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a15">uint</a> i=0; i<bone.InfVertices.size(); i++) +00650 { +00651 <span class="keyword">const</span> CVertexInf &vInf= bone.InfVertices[i]; +00652 tmpAlphas[vInf.VertexId]= 255; +00653 } +00654 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea1" doxytag="NL3D::CLodCharacterShape::buildMesh" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CLodCharacterShape::buildMesh </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const std::string & </td> + <td class="mdname" nowrap> <em>name</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>const <a class="el" href="a02808.html">CLodCharacterShapeBuild</a> & </td> + <td class="mdname" nowrap> <em>lodBuild</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +build the Mesh base information NB: SkinWeights array tells for each vertex what bone to use (for alpha test removing) +<p> +Definition at line <a class="el" href="a05937.html#l00337">337</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00300">_AnimMap</a>, <a class="el" href="a05938.html#l00297">_Anims</a>, <a class="el" href="a05938.html#l00291">_BoneMap</a>, <a class="el" href="a05938.html#l00288">_Bones</a>, <a class="el" href="a05938.html#l00286">_Normals</a>, <a class="el" href="a05938.html#l00283">_NumTriangles</a>, <a class="el" href="a05938.html#l00282">_NumVertices</a>, <a class="el" href="a05938.html#l00294">_TriangleIndices</a>, <a class="el" href="a05938.html#l00089">NL3D::CLodCharacterShapeBuild::BonesNames</a>, <a class="el" href="a05938.html#l00254">NL3D::CLodCharacterShape::CVertexInf::Influence</a>, <a class="el" href="a05990.html#l00063">NL3D_MESH_SKINNING_MAX_MATRIX</a>, <a class="el" href="a05622.html#l00290">nlassert</a>, <a class="el" href="a05938.html#l00086">NL3D::CLodCharacterShapeBuild::Normals</a>, <a class="el" href="a05938.html#l00080">NL3D::CLodCharacterShapeBuild::SkinWeights</a>, <a class="el" href="a05938.html#l00092">NL3D::CLodCharacterShapeBuild::TriangleIndices</a>, <a class="el" href="a05981.html#l00105">uint</a>, <a class="el" href="a05938.html#l00083">NL3D::CLodCharacterShapeBuild::UVs</a>, <a class="el" href="a05938.html#l00252">NL3D::CLodCharacterShape::CVertexInf::VertexId</a>, and <a class="el" href="a05938.html#l00077">NL3D::CLodCharacterShapeBuild::Vertices</a>. +<p> +Referenced by <a class="el" href="a05931.html#l00064">NL3D::CLodCharacterBuilder::setShape()</a>. +<p> +<div class="fragment"><pre>00338 { +00339 <a class="code" href="a04558.html#a15">uint</a> numVertices= lodBuild.Vertices.size(); +00340 <span class="keyword">const</span> vector<uint32> &triangleIndices= lodBuild.TriangleIndices; +00341 <span class="keyword">const</span> vector<CMesh::CSkinWeight> &skinWeights= lodBuild.SkinWeights; +00342 <span class="keyword">const</span> vector<CUV> &uvs= lodBuild.UVs; +00343 <span class="keyword">const</span> vector<CVector> &normals= lodBuild.Normals; +00344 +00345 <a class="code" href="a04199.html#a6">nlassert</a>(numVertices>0); +00346 <a class="code" href="a04199.html#a6">nlassert</a>(triangleIndices.size()>0); +00347 <a class="code" href="a04199.html#a6">nlassert</a>((triangleIndices.size()%3)==0); +00348 <a class="code" href="a04199.html#a6">nlassert</a>(skinWeights.size() == numVertices); +00349 <a class="code" href="a04199.html#a6">nlassert</a>(uvs.size() == numVertices); +00350 <a class="code" href="a04199.html#a6">nlassert</a>(normals.size() == numVertices); +00351 +00352 <span class="comment">// reset data</span> +00353 <a class="code" href="a05378.html#a381">contReset</a>(_Anims); +00354 <a class="code" href="a05378.html#a381">contReset</a>(_AnimMap); +00355 <a class="code" href="a05378.html#a381">contReset</a>(_Bones); +00356 <a class="code" href="a05378.html#a381">contReset</a>(_BoneMap); +00357 <a class="code" href="a05378.html#a381">contReset</a>(_TriangleIndices); +00358 <a class="code" href="a05378.html#a381">contReset</a>(_UVs); +00359 <a class="code" href="a05378.html#a381">contReset</a>(_Normals); +00360 +00361 <span class="comment">// Copy data.</span> +00362 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper4">_Name</a>= name; +00363 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper7">_NumVertices</a>= numVertices; +00364 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper6">_NumTriangles</a>= triangleIndices.size()/3; +00365 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper8">_TriangleIndices</a>= triangleIndices; +00366 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper9">_UVs</a>= uvs; +00367 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper5">_Normals</a>= normals; +00368 +00369 <span class="comment">// check indices.</span> +00370 <a class="code" href="a04558.html#a15">uint</a> i; +00371 <span class="keywordflow">for</span>(i=0;i<triangleIndices.size();i++) +00372 { +00373 <a class="code" href="a04199.html#a6">nlassert</a>(triangleIndices[i]<_NumVertices); +00374 } +00375 +00376 <span class="comment">// Copy bone names, and compute bone Map</span> +00377 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a>.resize(lodBuild.BonesNames.size()); +00378 <span class="keywordflow">for</span>(i=0; i<<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a>.size(); i++) +00379 { +00380 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a>[i].Name= lodBuild.BonesNames[i]; +00381 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper2">_BoneMap</a>.insert( make_pair(_Bones[i].Name, i) ); +00382 } +00383 +00384 <span class="comment">// "Normalize" SkinWeights for CLodCharacterShape</span> +00385 <span class="keywordflow">for</span>(i=0;i<skinWeights.size();i++) +00386 { +00387 <a class="code" href="a04199.html#a6">nlassert</a>(skinWeights[i].Weights[0]>0); +00388 <span class="comment">// for all slots not 0</span> +00389 <span class="keywordflow">for</span>(<a class="code" href="a04558.html#a15">uint</a> j=0;j<<a class="code" href="a04567.html#a0">NL3D_MESH_SKINNING_MAX_MATRIX</a>;j++) +00390 { +00391 <span class="comment">// if this this slot is used.</span> +00392 <span class="keywordflow">if</span>(skinWeights[i].Weights[j]>0) +00393 { +00394 <a class="code" href="a04558.html#a15">uint</a> boneId= skinWeights[i].MatrixId[j]; +00395 <a class="code" href="a04199.html#a6">nlassert</a>(boneId < <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a>.size()); +00396 <span class="comment">// init the vInf data</span> +00397 CVertexInf vInf; +00398 vInf.VertexId= i; +00399 vInf.Influence= skinWeights[i].Weights[j]; +00400 <span class="comment">// Insert this vertex influence in the bone.</span> +00401 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a>[boneId].InfVertices.push_back(vInf); +00402 } +00403 <span class="keywordflow">else</span> +00404 <span class="comment">// stop for this vertex.</span> +00405 <span class="keywordflow">break</span>; +00406 } +00407 } +00408 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea3" doxytag="NL3D::CLodCharacterShape::getAnimIdByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a14">sint</a> NL3D::CLodCharacterShape::getAnimIdByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const std::string & </td> + <td class="mdname1" valign="top" nowrap> <em>name</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get the animId from a name. -1 if not found +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00541">541</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00300">_AnimMap</a>, and <a class="el" href="a05981.html#l00104">sint</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00411">addAnim()</a>, and <a class="el" href="a06352.html#l00531">NL3D::CSceneUser::getCLodAnimIdByName()</a>. +<p> +<div class="fragment"><pre>00542 { +00543 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShapey0">CstItStrIdMap</a> it= <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper0">_AnimMap</a>.find(name); +00544 <span class="keywordflow">if</span>(it == <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper0">_AnimMap</a>.end()) +00545 <span class="keywordflow">return</span> -1; +00546 <span class="keywordflow">else</span> +00547 <span class="keywordflow">return</span> it->second; +00548 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea4" doxytag="NL3D::CLodCharacterShape::getAnimKey" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a02805.html">CLodCharacterShape::CVector3s</a> * NL3D::CLodCharacterShape::getAnimKey </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a04558.html#a15">uint</a> </td> + <td class="mdname" nowrap> <em>animId</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a05363.html#a367">TGlobalAnimationTime</a> </td> + <td class="mdname" nowrap> <em>time</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap>bool </td> + <td class="mdname" nowrap> <em>wrapMode</em>, </td> + </tr> + <tr> + <td class="md" nowrap align="right"></td> + <td></td> + <td class="md" nowrap><a class="el" href="a03128.html">CVector</a> & </td> + <td class="mdname" nowrap> <em>unPackScaleFactor</em></td> + </tr> + <tr> + <td></td> + <td class="md">) </td> + <td class="md" colspan="2"> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get a ptr to the vertices of the key according to animId and time. NB: the anim Loop if wrapMode is true <dl compact><dt><b>Parameters:</b></dt><dd> + <table border="0" cellspacing="2" cellpadding="0"> + <tr><td valign=top><em>unPackScaleFactor</em> </td><td>return value is the scale factor which to multiply </td></tr> + </table> +</dl> +<dl compact><dt><b>Returns:</b></dt><dd>NULL if animId is not valid</dd></dl> + +<p> +Definition at line <a class="el" href="a05937.html#l00572">572</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00297">_Anims</a>, <a class="el" href="a05938.html#l00282">_NumVertices</a>, <a class="el" href="a05938.html#l00238">NL3D::CLodCharacterShape::CAnim::AnimLength</a>, <a class="el" href="a05587.html#l00115">NLMISC::clamp()</a>, <a class="el" href="a05788.html#l00056">H_AUTO</a>, <a class="el" href="a05938.html#l00244">NL3D::CLodCharacterShape::CAnim::Keys</a>, <a class="el" href="a05938.html#l00236">NL3D::CLodCharacterShape::CAnim::NumKeys</a>, <a class="el" href="a05938.html#l00239">NL3D::CLodCharacterShape::CAnim::OOAnimLength</a>, <a class="el" href="a05981.html#l00104">sint</a>, <a class="el" href="a05454.html#l00045">NL3D::TGlobalAnimationTime</a>, <a class="el" href="a05981.html#l00105">uint</a>, and <a class="el" href="a05938.html#l00241">NL3D::CLodCharacterShape::CAnim::UnPackScaleFactor</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00359">NL3D::CLodCharacterManager::addRenderCharacterKey()</a>. +<p> +<div class="fragment"><pre>00573 { +00574 <a class="code" href="a04365.html#a4">H_AUTO</a>( NL3D_LodCharacterShape_getAnimKey ) +00575 +00576 <span class="keywordtype">float</span> localTime; +00577 +00578 <span class="keywordflow">if</span>(animId>=<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper1">_Anims</a>.size()) +00579 <span class="keywordflow">return</span> NULL; +00580 +00581 <span class="comment">// get the anim.</span> +00582 <span class="keyword">const</span> CAnim &anim= <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper1">_Anims</a>[animId]; +00583 +00584 <span class="comment">// scale info</span> +00585 unPackScaleFactor= anim.UnPackScaleFactor; +00586 +00587 <span class="comment">// Loop mgt.</span> +00588 <span class="keywordflow">if</span>(wrapMode) +00589 localTime= (<span class="keywordtype">float</span>)fmod(time, anim.AnimLength); +00590 <span class="keywordflow">else</span> +00591 localTime= (<span class="keywordtype">float</span>)time; +00592 +00593 <span class="comment">// Clamp to the range.</span> +00594 <a class="code" href="a05378.html#a374">clamp</a>(localTime, 0, anim.AnimLength); +00595 +00596 <span class="comment">// get the key.</span> +00597 <a class="code" href="a04558.html#a14">sint</a> keyId= (<a class="code" href="a04558.html#a14">sint</a>)floor( (localTime*anim.OOAnimLength) * anim.NumKeys ); +00598 <a class="code" href="a05378.html#a374">clamp</a>(keyId, 0, <a class="code" href="a05167.html#a16">sint</a>(anim.NumKeys-1)); +00599 +00600 <span class="comment">// return the key.</span> +00601 <span class="keywordflow">return</span> &anim.Keys[keyId * <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper7">_NumVertices</a>]; +00602 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea5" doxytag="NL3D::CLodCharacterShape::getBoneIdByName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a14">sint</a> NL3D::CLodCharacterShape::getBoneIdByName </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">const std::string & </td> + <td class="mdname1" valign="top" nowrap> <em>name</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get a bone id, according to its name. -1 if not found +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00552">552</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00291">_BoneMap</a>, and <a class="el" href="a05981.html#l00104">sint</a>. +<p> +Referenced by <a class="el" href="a06393.html#l01043">NL3D::CSkeletonModel::computeCLodVertexAlpha()</a>. +<p> +<div class="fragment"><pre>00553 { +00554 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShapey0">CstItStrIdMap</a> it= <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper2">_BoneMap</a>.find(name); +00555 <span class="keywordflow">if</span>(it == <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper2">_BoneMap</a>.end()) +00556 <span class="keywordflow">return</span> -1; +00557 <span class="keywordflow">else</span> +00558 <span class="keywordflow">return</span> it->second; +00559 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea6" doxytag="NL3D::CLodCharacterShape::getName" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const std::string& NL3D::CLodCharacterShape::getName </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +Get name of this lod. +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00178">178</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00212">NL3D::CLodCharacterManager::compile()</a>. +<p> +<div class="fragment"><pre>00178 {<span class="keywordflow">return</span> <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper4">_Name</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea7" doxytag="NL3D::CLodCharacterShape::getNormals" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a03128.html">CVector</a> * NL3D::CLodCharacterShape::getNormals </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get a ptr to the triangles indices +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00614">614</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00286">_Normals</a>, and <a class="el" href="a05938.html#l00282">_NumVertices</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00359">NL3D::CLodCharacterManager::addRenderCharacterKey()</a>. +<p> +<div class="fragment"><pre>00615 { +00616 <span class="keywordflow">if</span>(<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper7">_NumVertices</a>==0) +00617 <span class="keywordflow">return</span> NULL; +00618 +00619 <span class="keywordflow">return</span> &<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper5">_Normals</a>[0]; +00620 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea8" doxytag="NL3D::CLodCharacterShape::getNumBones" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NL3D::CLodCharacterShape::getNumBones </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get the number of bones +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00190">190</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +References <a class="el" href="a05938.html#l00288">_Bones</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +<div class="fragment"><pre>00190 {<span class="keywordflow">return</span> <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper3">_Bones</a>.size();} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea9" doxytag="NL3D::CLodCharacterShape::getNumTriangles" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NL3D::CLodCharacterShape::getNumTriangles </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get the number of triangles of this mesh +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00187">187</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +References <a class="el" href="a05938.html#l00283">_NumTriangles</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00359">NL3D::CLodCharacterManager::addRenderCharacterKey()</a>. +<p> +<div class="fragment"><pre>00187 {<span class="keywordflow">return</span> <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper6">_NumTriangles</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea10" doxytag="NL3D::CLodCharacterShape::getNumVertices" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a15">uint</a> NL3D::CLodCharacterShape::getNumVertices </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const<code> [inline]</code></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get the number of vertices of this mesh +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00184">184</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +References <a class="el" href="a05938.html#l00282">_NumVertices</a>, and <a class="el" href="a05981.html#l00105">uint</a>. +<p> +Referenced by <a class="el" href="a05931.html#l00111">NL3D::CLodCharacterBuilder::addAnim()</a>, <a class="el" href="a05935.html#l00359">NL3D::CLodCharacterManager::addRenderCharacterKey()</a>, <a class="el" href="a05935.html#l00844">NL3D::CLodCharacterManager::initInstance()</a>, and <a class="el" href="a05937.html#l00632">startBoneAlpha()</a>. +<p> +<div class="fragment"><pre>00184 {<span class="keywordflow">return</span> <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper7">_NumVertices</a>;} +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea11" doxytag="NL3D::CLodCharacterShape::getTriangleArray" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a04558.html#a11">uint32</a> * NL3D::CLodCharacterShape::getTriangleArray </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get a ptr to the triangles indices +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00563">563</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00283">_NumTriangles</a>, <a class="el" href="a05938.html#l00294">_TriangleIndices</a>, and <a class="el" href="a05981.html#l00100">uint32</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00359">NL3D::CLodCharacterManager::addRenderCharacterKey()</a>. +<p> +<div class="fragment"><pre>00564 { +00565 <span class="keywordflow">if</span>(<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper6">_NumTriangles</a>) +00566 <span class="keywordflow">return</span> &<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper8">_TriangleIndices</a>[0]; +00567 <span class="keywordflow">else</span> +00568 <span class="keywordflow">return</span> NULL; +00569 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea12" doxytag="NL3D::CLodCharacterShape::getUVs" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> const <a class="el" href="a03640.html">CUV</a> * NL3D::CLodCharacterShape::getUVs </td> + <td class="md" valign="top">( </td> + <td class="mdname1" valign="top" nowrap> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +get a ptr on the UVs. +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00605">605</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00282">_NumVertices</a>. +<p> +Referenced by <a class="el" href="a05935.html#l00844">NL3D::CLodCharacterManager::initInstance()</a>. +<p> +<div class="fragment"><pre>00606 { +00607 <span class="keywordflow">if</span>(<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper7">_NumVertices</a>==0) +00608 <span class="keywordflow">return</span> NULL; +00609 +00610 <span class="keywordflow">return</span> &<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper9">_UVs</a>[0]; +00611 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapea13" doxytag="NL3D::CLodCharacterShape::serial" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CLodCharacterShape::serial </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top"><a class="el" href="a02270.html">NLMISC::IStream</a> & </td> + <td class="mdname1" valign="top" nowrap> <em>f</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap></td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +serial this shape +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00505">505</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00300">_AnimMap</a>, <a class="el" href="a05938.html#l00297">_Anims</a>, <a class="el" href="a05938.html#l00291">_BoneMap</a>, <a class="el" href="a05938.html#l00288">_Bones</a>, <a class="el" href="a05938.html#l00286">_Normals</a>, <a class="el" href="a05938.html#l00283">_NumTriangles</a>, <a class="el" href="a05938.html#l00282">_NumVertices</a>, <a class="el" href="a05938.html#l00294">_TriangleIndices</a>, <a class="el" href="a06462.html#l00232">NLMISC::IStream::serial()</a>, <a class="el" href="a06462.html#l00520">NLMISC::IStream::serialCheck()</a>, <a class="el" href="a06462.html#l00324">NLMISC::IStream::serialCont()</a>, <a class="el" href="a06461.html#l00266">NLMISC::IStream::serialVersion()</a>, <a class="el" href="a05981.html#l00104">sint</a>, and <a class="el" href="a05981.html#l00100">uint32</a>. +<p> +<div class="fragment"><pre>00506 { +00507 <span class="comment">// NEL_CLODSHAP</span> +00508 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_0">serialCheck</a>((<a class="code" href="a04558.html#a11">uint32</a>)'_LEN'); +00509 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_0">serialCheck</a>((<a class="code" href="a04558.html#a11">uint32</a>)'DOLC'); +00510 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_0">serialCheck</a>((<a class="code" href="a04558.html#a11">uint32</a>)'PAHS'); +00511 +00512 <span class="comment">/*</span> +00513 <span class="comment"> Version 1:</span> +00514 <span class="comment"> - UVs and Normals.</span> +00515 <span class="comment"> */</span> +00516 <a class="code" href="a04558.html#a14">sint</a> ver= f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2035_8">serialVersion</a>(1); +00517 +00518 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_Name); +00519 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_NumVertices); +00520 f.<a class="code" href="a02270.html#NLMISC_1_1IStreama5">serial</a>(_NumTriangles); +00521 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_Bones); +00522 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_BoneMap); +00523 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_TriangleIndices); +00524 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_Anims); +00525 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_AnimMap); +00526 +00527 <span class="keywordflow">if</span>(ver>=1) +00528 { +00529 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_UVs); +00530 f.<a class="code" href="a02270.html#NLMISC_1_1IStreamz2033_9">serialCont</a>(_Normals); +00531 } +00532 <span class="keywordflow">else</span> +00533 { +00534 <span class="comment">// Must init dummy UVs/normals</span> +00535 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper9">_UVs</a>.resize(_NumVertices, CUV(0,0)); +00536 <a class="code" href="a02801.html#NL3D_1_1CLodCharacterShaper5">_Normals</a>.resize(_NumVertices, CVector::K); +00537 } +00538 } +</pre></div> </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShapez354_1" doxytag="NL3D::CLodCharacterShape::startBoneAlpha" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> void NL3D::CLodCharacterShape::startBoneAlpha </td> + <td class="md" valign="top">( </td> + <td class="md" nowrap valign="top">std::vector< <a class="el" href="a04558.html#a7">uint8</a> > & </td> + <td class="mdname1" valign="top" nowrap> <em>tmpAlphas</em> </td> + <td class="md" valign="top"> ) </td> + <td class="md" nowrap> const</td> + </tr> + + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +init the process by resize-ing a tmp uint8 vector of <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapea10">getNumVertices()</a> size, and reset to 0 +<p> + +<p> +Definition at line <a class="el" href="a05937.html#l00632">632</a> of file <a class="el" href="a05937.html">lod_character_shape.cpp</a>. +<p> +References <a class="el" href="a05938.html#l00184">getNumVertices()</a>. +<p> +Referenced by <a class="el" href="a06393.html#l01043">NL3D::CSkeletonModel::computeCLodVertexAlpha()</a>. +<p> +<div class="fragment"><pre>00633 { +00634 <span class="comment">// clear</span> +00635 tmpAlphas.clear(); +00636 <span class="comment">// alocate, and fill</span> +00637 tmpAlphas.resize(<a class="code" href="a02801.html#NL3D_1_1CLodCharacterShapea10">getNumVertices</a>(), 0); +00638 } +</pre></div> </td> + </tr> +</table> +<hr><h2>Field Documentation</h2> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper0" doxytag="NL3D::CLodCharacterShape::_AnimMap" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey2">TStrIdMap</a> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper0">NL3D::CLodCharacterShape::_AnimMap</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00300">300</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00411">addAnim()</a>, <a class="el" href="a05937.html#l00337">buildMesh()</a>, <a class="el" href="a05937.html#l00541">getAnimIdByName()</a>, and <a class="el" href="a05937.html#l00505">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper1" doxytag="NL3D::CLodCharacterShape::_Anims" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> std::vector<<a class="el" href="a02802.html">CAnim</a>> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper1">NL3D::CLodCharacterShape::_Anims</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +List of animation. +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00297">297</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00411">addAnim()</a>, <a class="el" href="a05937.html#l00337">buildMesh()</a>, <a class="el" href="a05937.html#l00572">getAnimKey()</a>, and <a class="el" href="a05937.html#l00505">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper2" doxytag="NL3D::CLodCharacterShape::_BoneMap" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShapey2">TStrIdMap</a> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper2">NL3D::CLodCharacterShape::_BoneMap</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00291">291</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00337">buildMesh()</a>, <a class="el" href="a05937.html#l00552">getBoneIdByName()</a>, and <a class="el" href="a05937.html#l00505">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper3" doxytag="NL3D::CLodCharacterShape::_Bones" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> std::vector<<a class="el" href="a02804.html">CBoneInfluence</a>> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper3">NL3D::CLodCharacterShape::_Bones</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +List of bones and vertices they influence. +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00288">288</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00641">addBoneAlpha()</a>, <a class="el" href="a05937.html#l00337">buildMesh()</a>, <a class="el" href="a05938.html#l00190">getNumBones()</a>, and <a class="el" href="a05937.html#l00505">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper4" doxytag="NL3D::CLodCharacterShape::_Name" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> std::string <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper4">NL3D::CLodCharacterShape::_Name</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00281">281</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper5" doxytag="NL3D::CLodCharacterShape::_Normals" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> std::vector<<a class="el" href="a03128.html">CVector</a>> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper5">NL3D::CLodCharacterShape::_Normals</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00286">286</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00337">buildMesh()</a>, <a class="el" href="a05937.html#l00614">getNormals()</a>, and <a class="el" href="a05937.html#l00505">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper6" doxytag="NL3D::CLodCharacterShape::_NumTriangles" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper6">NL3D::CLodCharacterShape::_NumTriangles</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00283">283</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00337">buildMesh()</a>, <a class="el" href="a05937.html#l00330">CLodCharacterShape()</a>, <a class="el" href="a05938.html#l00187">getNumTriangles()</a>, <a class="el" href="a05937.html#l00563">getTriangleArray()</a>, and <a class="el" href="a05937.html#l00505">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper7" doxytag="NL3D::CLodCharacterShape::_NumVertices" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> <a class="el" href="a04558.html#a11">uint32</a> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper7">NL3D::CLodCharacterShape::_NumVertices</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00282">282</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00411">addAnim()</a>, <a class="el" href="a05937.html#l00337">buildMesh()</a>, <a class="el" href="a05937.html#l00330">CLodCharacterShape()</a>, <a class="el" href="a05937.html#l00572">getAnimKey()</a>, <a class="el" href="a05937.html#l00614">getNormals()</a>, <a class="el" href="a05938.html#l00184">getNumVertices()</a>, <a class="el" href="a05937.html#l00605">getUVs()</a>, and <a class="el" href="a05937.html#l00505">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper8" doxytag="NL3D::CLodCharacterShape::_TriangleIndices" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> std::vector<<a class="el" href="a04558.html#a11">uint32</a>> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper8">NL3D::CLodCharacterShape::_TriangleIndices</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> +numTriangles * 3. +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00294">294</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. +<p> +Referenced by <a class="el" href="a05937.html#l00337">buildMesh()</a>, <a class="el" href="a05937.html#l00563">getTriangleArray()</a>, and <a class="el" href="a05937.html#l00505">serial()</a>. </td> + </tr> +</table> +<a class="anchor" name="NL3D_1_1CLodCharacterShaper9" doxytag="NL3D::CLodCharacterShape::_UVs" ></a><p> +<table class="mdTable" width="100%" cellpadding="2" cellspacing="0"> + <tr> + <td class="mdRow"> + <table cellpadding="0" cellspacing="0" border="0"> + <tr> + <td class="md" nowrap valign="top"> std::vector<<a class="el" href="a03640.html">CUV</a>> <a class="el" href="a02801.html#NL3D_1_1CLodCharacterShaper9">NL3D::CLodCharacterShape::_UVs</a><code> [private]</code> + </table> + </td> + </tr> +</table> +<table cellspacing=5 cellpadding=0 border=0> + <tr> + <td> + + </td> + <td> + +<p> + +<p> +Definition at line <a class="el" href="a05938.html#l00285">285</a> of file <a class="el" href="a05938.html">lod_character_shape.h</a>. </td> + </tr> +</table> +<hr>The documentation for this class was generated from the following files:<ul> +<li><a class="el" href="a05938.html">lod_character_shape.h</a><li><a class="el" href="a05937.html">lod_character_shape.cpp</a></ul> +<hr size="1"><address style="align: right;"><small>Generated on Tue Mar 16 06:49:57 2004 for NeL by +<a href="http://www.doxygen.org/index.html"> +<img src="doxygen.png" alt="doxygen" align="middle" border=0 > +</a>1.3.6 </small></address> +</body> +</html> |