Sophie

Sophie

distrib > Mandriva > 2011.0 > i586 > by-pkgid > a16d689bc65aac5d987d5129109e6de5 > files > 679

irrlicht-doc-1.7.2-1.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Irrlicht Engine: irr::scene::ISkinnedMesh Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<table class="irrlicht" >
  <tr valign="middle"> 
    <td><font size="2"><a class="qindex" href="index.html"><font color="#FFFFFF">Home</font></a> 
      | <a class="qindex" href="namespaces.html"><font color="#FFFFFF">Namespaces</font></a> 
      | <a class="qindex" href="hierarchy.html"><font color="#FFFFFF">Hierarchy</font></a> 
      | <a class="qindex" href="classes.html"><font color="#FFFFFF">Alphabetical 
      List</font></a> | <a class="qindex" href="annotated.html"><font color="#FFFFFF"> 
      Class list</font></a> | <a class="qindex" href="files.html"><font color="#FFFFFF">Files</font></a> 
      | <a class="qindex" href="namespacemembers.html"><font color="#FFFFFF"> 
      Namespace&nbsp;Members</font></a> | <a class="qindex" href="functions.html"><font color="#FFFFFF">Class 
      members</font></a> | <a class="qindex" href="globals.html"><font color="#FFFFFF">File 
      members</font></a> | <a class="qindex" href="pages.html"><font color="#FFFFFF">Tutorials</font></a></font> </td>
  </tr>
</table>
<!-- Generated by Doxygen 1.6.2 -->
  <div class="navpath"><a class="el" href="namespaceirr.html">irr</a>::<a class="el" href="namespaceirr_1_1scene.html">scene</a>::<a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html">ISkinnedMesh</a>
  </div>
<div class="contents">
<h1>irr::scene::ISkinnedMesh Class Reference</h1><!-- doxytag: class="irr::scene::ISkinnedMesh" --><!-- doxytag: inherits="irr::scene::IAnimatedMesh" -->
<p>Interface for using some special functions of Skinned meshes.  
<a href="#_details">More...</a></p>

<p><code>#include &lt;<a class="el" href="_i_skinned_mesh_8h_source.html">ISkinnedMesh.h</a>&gt;</code></p>
<div class="dynheader">
Inheritance diagram for irr::scene::ISkinnedMesh:</div>
<div class="dynsection">
 <div class="center">
  <img src="classirr_1_1scene_1_1_i_skinned_mesh.png" usemap="#irr::scene::ISkinnedMesh_map" alt=""/>
  <map id="irr::scene::ISkinnedMesh_map" name="irr::scene::ISkinnedMesh_map">
<area href="classirr_1_1scene_1_1_i_animated_mesh.html" alt="irr::scene::IAnimatedMesh" shape="rect" coords="0,112,157,136"/>
<area href="classirr_1_1scene_1_1_i_mesh.html" alt="irr::scene::IMesh" shape="rect" coords="0,56,157,80"/>
<area href="classirr_1_1_i_reference_counted.html" alt="irr::IReferenceCounted" shape="rect" coords="0,0,157,24"/>
</map>
 </div>
</div>

<p><a href="classirr_1_1scene_1_1_i_skinned_mesh-members.html">List of all members.</a></p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Joints.  <a href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_position_key.html">SPositionKey</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Animation keyframe which describes a new position.  <a href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_position_key.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_rotation_key.html">SRotationKey</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Animation keyframe which describes a new rotation.  <a href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_rotation_key.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_scale_key.html">SScaleKey</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Animation keyframe which describes a new scale.  <a href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_scale_key.html#_details">More...</a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">struct &nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_weight.html">SWeight</a></td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">A vertex weight.  <a href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_weight.html#_details">More...</a><br/></td></tr>
<tr><td colspan="2"><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a713edfbc7f3e9394487882156dc6fe2f">addJoint</a> (<a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *parent=0)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new joint to the mesh, access it as last one.  <a href="#a713edfbc7f3e9394487882156dc6fe2f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structirr_1_1scene_1_1_s_skin_mesh_buffer.html">SSkinMeshBuffer</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#abc55b0dc2c1e80ef5fa4cab8e17b76af">addMeshBuffer</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new meshbuffer to the mesh, access it as last one.  <a href="#abc55b0dc2c1e80ef5fa4cab8e17b76af"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_position_key.html">SPositionKey</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a4441937c52c1fdf3d2bbaeff1406716d">addPositionKey</a> (<a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *joint)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new position key to the mesh, access it as last one.  <a href="#a4441937c52c1fdf3d2bbaeff1406716d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_rotation_key.html">SRotationKey</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#ab5d41c1fc22de5d7cb9c376d2a873ab9">addRotationKey</a> (<a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *joint)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new rotation key to the mesh, access it as last one.  <a href="#ab5d41c1fc22de5d7cb9c376d2a873ab9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_scale_key.html">SScaleKey</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a3601a01c99594fe8db3cccaec89df7d6">addScaleKey</a> (<a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *joint)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new scale key to the mesh, access it as last one.  <a href="#a3601a01c99594fe8db3cccaec89df7d6"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_weight.html">SWeight</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a6b79ee2544eb0ffe8501c06fd347ea89">addWeight</a> (<a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *joint)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Adds a new weight to the mesh, access it as last one.  <a href="#a6b79ee2544eb0ffe8501c06fd347ea89"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a5cbb9dad48413636f9e9c2ac9201cfae">animateMesh</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> frame, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> blend)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Animates this mesh's joints based on frame input.  <a href="#a5cbb9dad48413636f9e9c2ac9201cfae"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#ae63f3f1a74bf38c4b5113e3a5b96c0f3">convertMeshToTangents</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">converts the vertex type of all meshbuffers to tangents.  <a href="#ae63f3f1a74bf38c4b5113e3a5b96c0f3"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a83549df06904513c439c92e34b424b02">finalize</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">loaders should call this after populating the mesh  <a href="#a83549df06904513c439c92e34b424b02"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="classirr_1_1core_1_1array.html">core::array</a><br class="typebreak"/>
&lt; <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> * &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a8dcc5dc083cd93a349acd0a2e01da539">getAllJoints</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exposed for loaders: joints list  <a href="#a8dcc5dc083cd93a349acd0a2e01da539"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classirr_1_1core_1_1array.html">core::array</a>&lt; <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> * &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a4fcdc38666f24a092191668ff909936f">getAllJoints</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exposed for loaders: joints list  <a href="#a4fcdc38666f24a092191668ff909936f"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a7715fb82ffec225d2fd9b8aa860e3c38">getJointCount</a> () const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets joint count.  <a href="#a7715fb82ffec225d2fd9b8aa860e3c38"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual const <a class="el" href="namespaceirr.html#a9395eaea339bcb546b319e9c96bf7410">c8</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#ab28aed78a7e2eeaa20ba7eb0eb082ba4">getJointName</a> (<a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a> number) const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the name of a joint.  <a href="#ab28aed78a7e2eeaa20ba7eb0eb082ba4"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#ace7288f54490d017efebe24c3eb46ab8">getJointNumber</a> (const <a class="el" href="namespaceirr.html#a9395eaea339bcb546b319e9c96bf7410">c8</a> *name) const =0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a joint number from its name.  <a href="#ace7288f54490d017efebe24c3eb46ab8"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual <a class="el" href="classirr_1_1core_1_1array.html">core::array</a><br class="typebreak"/>
&lt; <a class="el" href="structirr_1_1scene_1_1_s_skin_mesh_buffer.html">SSkinMeshBuffer</a> * &gt; &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a5c46b784d6e8b7479e6f630377ab42ef">getMeshBuffers</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exposed for loaders: to add mesh buffers  <a href="#a5c46b784d6e8b7479e6f630377ab42ef"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a2131a8693a84e29036ffff69955a2ec1">isStatic</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if the mesh is non-animated.  <a href="#a2131a8693a84e29036ffff69955a2ec1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a42ff192210ffc61a4c9fe8184b466b17">setHardwareSkinning</a> (bool on)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allows to enable hardware skinning.  <a href="#a42ff192210ffc61a4c9fe8184b466b17"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#afbb087c018dac08007ff5d22c6fe86b9">setInterpolationMode</a> (<a class="el" href="namespaceirr_1_1scene.html#a26f30865cf5527e7255a8495e280314c">E_INTERPOLATION_MODE</a> mode)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets Interpolation Mode.  <a href="#afbb087c018dac08007ff5d22c6fe86b9"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a3bd5dd1429c13bce259557875a5bbe7d">skinMesh</a> ()=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Preforms a software skin on this mesh based of joint positions.  <a href="#a3bd5dd1429c13bce259557875a5bbe7d"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a19f264883a006d68b44f8b81d8ff5927">updateNormalsWhenAnimating</a> (bool on)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Update Normals when Animating.  <a href="#a19f264883a006d68b44f8b81d8ff5927"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">virtual bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a1d7d56472adeb21aada79c361bf142be">useAnimationFrom</a> (const <a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html">ISkinnedMesh</a> *mesh)=0</td></tr>
<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Use animation from another mesh.  <a href="#a1d7d56472adeb21aada79c361bf142be"></a><br/></td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Interface for using some special functions of Skinned meshes. </p>

<p>Definition at line <a class="el" href="_i_skinned_mesh_8h_source.html#l00032">32</a> of file <a class="el" href="_i_skinned_mesh_8h_source.html">ISkinnedMesh.h</a>.</p>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="a713edfbc7f3e9394487882156dc6fe2f"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addJoint" ref="a713edfbc7f3e9394487882156dc6fe2f" args="(SJoint *parent=0)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a>* irr::scene::ISkinnedMesh::addJoint </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *&nbsp;</td>
          <td class="paramname"> <em>parent</em> = <code>0</code></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a new joint to the mesh, access it as last one. </p>

</div>
</div>
<a class="anchor" id="abc55b0dc2c1e80ef5fa4cab8e17b76af"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addMeshBuffer" ref="abc55b0dc2c1e80ef5fa4cab8e17b76af" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structirr_1_1scene_1_1_s_skin_mesh_buffer.html">SSkinMeshBuffer</a>* irr::scene::ISkinnedMesh::addMeshBuffer </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a new meshbuffer to the mesh, access it as last one. </p>

</div>
</div>
<a class="anchor" id="a4441937c52c1fdf3d2bbaeff1406716d"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addPositionKey" ref="a4441937c52c1fdf3d2bbaeff1406716d" args="(SJoint *joint)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_position_key.html">SPositionKey</a>* irr::scene::ISkinnedMesh::addPositionKey </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *&nbsp;</td>
          <td class="paramname"> <em>joint</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a new position key to the mesh, access it as last one. </p>

</div>
</div>
<a class="anchor" id="ab5d41c1fc22de5d7cb9c376d2a873ab9"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addRotationKey" ref="ab5d41c1fc22de5d7cb9c376d2a873ab9" args="(SJoint *joint)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_rotation_key.html">SRotationKey</a>* irr::scene::ISkinnedMesh::addRotationKey </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *&nbsp;</td>
          <td class="paramname"> <em>joint</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a new rotation key to the mesh, access it as last one. </p>

</div>
</div>
<a class="anchor" id="a3601a01c99594fe8db3cccaec89df7d6"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addScaleKey" ref="a3601a01c99594fe8db3cccaec89df7d6" args="(SJoint *joint)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_scale_key.html">SScaleKey</a>* irr::scene::ISkinnedMesh::addScaleKey </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *&nbsp;</td>
          <td class="paramname"> <em>joint</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a new scale key to the mesh, access it as last one. </p>

</div>
</div>
<a class="anchor" id="a6b79ee2544eb0ffe8501c06fd347ea89"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addWeight" ref="a6b79ee2544eb0ffe8501c06fd347ea89" args="(SJoint *joint)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_weight.html">SWeight</a>* irr::scene::ISkinnedMesh::addWeight </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a> *&nbsp;</td>
          <td class="paramname"> <em>joint</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Adds a new weight to the mesh, access it as last one. </p>

</div>
</div>
<a class="anchor" id="a5cbb9dad48413636f9e9c2ac9201cfae"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::animateMesh" ref="a5cbb9dad48413636f9e9c2ac9201cfae" args="(f32 frame, f32 blend)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::ISkinnedMesh::animateMesh </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&nbsp;</td>
          <td class="paramname"> <em>frame</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&nbsp;</td>
          <td class="paramname"> <em>blend</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Animates this mesh's joints based on frame input. </p>

</div>
</div>
<a class="anchor" id="ae63f3f1a74bf38c4b5113e3a5b96c0f3"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::convertMeshToTangents" ref="ae63f3f1a74bf38c4b5113e3a5b96c0f3" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::ISkinnedMesh::convertMeshToTangents </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>converts the vertex type of all meshbuffers to tangents. </p>
<p>E.g. used for bump mapping. </p>

</div>
</div>
<a class="anchor" id="a83549df06904513c439c92e34b424b02"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::finalize" ref="a83549df06904513c439c92e34b424b02" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::ISkinnedMesh::finalize </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>loaders should call this after populating the mesh </p>

</div>
</div>
<a class="anchor" id="a8dcc5dc083cd93a349acd0a2e01da539"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getAllJoints" ref="a8dcc5dc083cd93a349acd0a2e01da539" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="classirr_1_1core_1_1array.html">core::array</a>&lt;<a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a>*&gt;&amp; irr::scene::ISkinnedMesh::getAllJoints </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>exposed for loaders: joints list </p>

</div>
</div>
<a class="anchor" id="a4fcdc38666f24a092191668ff909936f"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getAllJoints" ref="a4fcdc38666f24a092191668ff909936f" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1core_1_1array.html">core::array</a>&lt;<a class="el" href="structirr_1_1scene_1_1_i_skinned_mesh_1_1_s_joint.html">SJoint</a>*&gt;&amp; irr::scene::ISkinnedMesh::getAllJoints </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>exposed for loaders: joints list </p>

</div>
</div>
<a class="anchor" id="a7715fb82ffec225d2fd9b8aa860e3c38"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getJointCount" ref="a7715fb82ffec225d2fd9b8aa860e3c38" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a> irr::scene::ISkinnedMesh::getJointCount </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets joint count. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>Amount of joints in the skeletal animated mesh. </dd></dl>

</div>
</div>
<a class="anchor" id="ab28aed78a7e2eeaa20ba7eb0eb082ba4"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getJointName" ref="ab28aed78a7e2eeaa20ba7eb0eb082ba4" args="(u32 number) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const <a class="el" href="namespaceirr.html#a9395eaea339bcb546b319e9c96bf7410">c8</a>* irr::scene::ISkinnedMesh::getJointName </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a>&nbsp;</td>
          <td class="paramname"> <em>number</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets the name of a joint. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>number,:</em>&nbsp;</td><td>Zero based index of joint. The last joint has the number <a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#a7715fb82ffec225d2fd9b8aa860e3c38" title="Gets joint count.">getJointCount()</a>-1; </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Name of joint and null if an error happened. </dd></dl>

</div>
</div>
<a class="anchor" id="ace7288f54490d017efebe24c3eb46ab8"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getJointNumber" ref="ace7288f54490d017efebe24c3eb46ab8" args="(const c8 *name) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> irr::scene::ISkinnedMesh::getJointNumber </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceirr.html#a9395eaea339bcb546b319e9c96bf7410">c8</a> *&nbsp;</td>
          <td class="paramname"> <em>name</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Gets a joint number from its name. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>name,:</em>&nbsp;</td><td>Name of the joint. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>Number of the joint or -1 if not found. </dd></dl>

</div>
</div>
<a class="anchor" id="a5c46b784d6e8b7479e6f630377ab42ef"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getMeshBuffers" ref="a5c46b784d6e8b7479e6f630377ab42ef" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="classirr_1_1core_1_1array.html">core::array</a>&lt;<a class="el" href="structirr_1_1scene_1_1_s_skin_mesh_buffer.html">SSkinMeshBuffer</a>*&gt;&amp; irr::scene::ISkinnedMesh::getMeshBuffers </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>exposed for loaders: to add mesh buffers </p>

</div>
</div>
<a class="anchor" id="a2131a8693a84e29036ffff69955a2ec1"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::isStatic" ref="a2131a8693a84e29036ffff69955a2ec1" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool irr::scene::ISkinnedMesh::isStatic </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Check if the mesh is non-animated. </p>

</div>
</div>
<a class="anchor" id="a42ff192210ffc61a4c9fe8184b466b17"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::setHardwareSkinning" ref="a42ff192210ffc61a4c9fe8184b466b17" args="(bool on)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool irr::scene::ISkinnedMesh::setHardwareSkinning </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>on</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Allows to enable hardware skinning. </p>

</div>
</div>
<a class="anchor" id="afbb087c018dac08007ff5d22c6fe86b9"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::setInterpolationMode" ref="afbb087c018dac08007ff5d22c6fe86b9" args="(E_INTERPOLATION_MODE mode)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::ISkinnedMesh::setInterpolationMode </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceirr_1_1scene.html#a26f30865cf5527e7255a8495e280314c">E_INTERPOLATION_MODE</a>&nbsp;</td>
          <td class="paramname"> <em>mode</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Sets Interpolation Mode. </p>

</div>
</div>
<a class="anchor" id="a3bd5dd1429c13bce259557875a5bbe7d"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::skinMesh" ref="a3bd5dd1429c13bce259557875a5bbe7d" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::ISkinnedMesh::skinMesh </td>
          <td>(</td>
          <td class="paramname"></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Preforms a software skin on this mesh based of joint positions. </p>

</div>
</div>
<a class="anchor" id="a19f264883a006d68b44f8b81d8ff5927"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::updateNormalsWhenAnimating" ref="a19f264883a006d68b44f8b81d8ff5927" args="(bool on)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void irr::scene::ISkinnedMesh::updateNormalsWhenAnimating </td>
          <td>(</td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>on</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Update Normals when Animating. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>on</em>&nbsp;</td><td>If false don't animate, which is faster. Else update normals, which allows for proper lighting of animated meshes. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a class="anchor" id="a1d7d56472adeb21aada79c361bf142be"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::useAnimationFrom" ref="a1d7d56472adeb21aada79c361bf142be" args="(const ISkinnedMesh *mesh)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool irr::scene::ISkinnedMesh::useAnimationFrom </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html">ISkinnedMesh</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em></td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Use animation from another mesh. </p>
<p>The animation is linked (not copied) based on joint names so make sure they are unique. </p>
<dl class="return"><dt><b>Returns:</b></dt><dd>True if all joints in this mesh were matched up (empty names will not be matched, and it's case sensitive). Unmatched joints will not be animated. </dd></dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="_i_skinned_mesh_8h_source.html">ISkinnedMesh.h</a></li>
</ul>
</div>
<hr size="1">
<address style="align: right;">
<small> </small>
</address>
<table width="100%" border="0" cellspacing="0" cellpadding="2">
  <tr> 
    <td width="0"> <div align="left"><small><a href="http://irrlicht.sourceforge.net" target="_blank"><img src="irrlicht.png" alt="The Irrlicht Engine" align="middle" border=0 width=88 height=31></a></small></div></td>
    <td> <div align="left"><small><em><font size="2">The <a href="http://irrlicht.sourceforge.net" target="_blank">Irrlicht 
        Engine</a> Documentation &copy; 2003-2010 by Nikolaus Gebhardt. Generated 
        on Sun Oct 24 12:42:08 2010 by <a href="http://www.doxygen.org" target="_blank">Doxygen</a> 
        (1.6.2)</font></em></small></div></td>
  </tr>
</table>
<address style="align: right;">
</address>
</body>
</html>