Sophie

Sophie

distrib > Mandriva > 2010.1 > x86_64 > media > contrib-release > by-pkgid > 58828b263d8f56d90ac336dea07a4586 > files > 667

irrlicht-doc-1.6.1-1mdv2010.1.x86_64.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.5.6 -->
  <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" -->Interface for using some special functions of Skinned meshes.  
<a href="#_details">More...</a>
<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">

<p><center><img src="classirr_1_1scene_1_1_i_skinned_mesh.png" usemap="#irr::scene::ISkinnedMesh_map" border="0" alt=""></center>
<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>

<p>
<a href="classirr_1_1scene_1_1_i_skinned_mesh-members.html">List of all members.</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">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#713edfbc7f3e9394487882156dc6fe2f">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="#713edfbc7f3e9394487882156dc6fe2f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#bc55b0dc2c1e80ef5fa4cab8e17b76af">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="#bc55b0dc2c1e80ef5fa4cab8e17b76af"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#4441937c52c1fdf3d2bbaeff1406716d">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="#4441937c52c1fdf3d2bbaeff1406716d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#b5d41c1fc22de5d7cb9c376d2a873ab9">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="#b5d41c1fc22de5d7cb9c376d2a873ab9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#3601a01c99594fe8db3cccaec89df7d6">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="#3601a01c99594fe8db3cccaec89df7d6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#6b79ee2544eb0ffe8501c06fd347ea89">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="#6b79ee2544eb0ffe8501c06fd347ea89"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#5cbb9dad48413636f9e9c2ac9201cfae">animateMesh</a> (<a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">f32</a> frame, <a class="el" href="namespaceirr.html#0277be98d67dc26ff93b1a6a1d086b07">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="#5cbb9dad48413636f9e9c2ac9201cfae"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#e63f3f1a74bf38c4b5113e3a5b96c0f3">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="#e63f3f1a74bf38c4b5113e3a5b96c0f3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#83549df06904513c439c92e34b424b02">finalize</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">loaders should call this after populating the mesh  <a href="#83549df06904513c439c92e34b424b02"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="classirr_1_1core_1_1array.html">core::array</a><br>
&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#8dcc5dc083cd93a349acd0a2e01da539">getAllJoints</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exposed for loaders: joints list  <a href="#8dcc5dc083cd93a349acd0a2e01da539"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#4fcdc38666f24a092191668ff909936f">getAllJoints</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exposed for loaders: joints list  <a href="#4fcdc38666f24a092191668ff909936f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirr.html#0416a53257075833e7002efd0a18e804">u32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#7715fb82ffec225d2fd9b8aa860e3c38">getJointCount</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets joint count.  <a href="#7715fb82ffec225d2fd9b8aa860e3c38"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="namespaceirr.html#9395eaea339bcb546b319e9c96bf7410">c8</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#b28aed78a7e2eeaa20ba7eb0eb082ba4">getJointName</a> (<a class="el" href="namespaceirr.html#0416a53257075833e7002efd0a18e804">u32</a> number) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the name of a joint.  <a href="#b28aed78a7e2eeaa20ba7eb0eb082ba4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="namespaceirr.html#c66849b7a6ed16e30ebede579f9b47c6">s32</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classirr_1_1scene_1_1_i_skinned_mesh.html#ce7288f54490d017efebe24c3eb46ab8">getJointNumber</a> (const <a class="el" href="namespaceirr.html#9395eaea339bcb546b319e9c96bf7410">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="#ce7288f54490d017efebe24c3eb46ab8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classirr_1_1core_1_1array.html">core::array</a><br>
&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#5c46b784d6e8b7479e6f630377ab42ef">getMeshBuffers</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">exposed for loaders: to add mesh buffers  <a href="#5c46b784d6e8b7479e6f630377ab42ef"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#2131a8693a84e29036ffff69955a2ec1">isStatic</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if the mesh is non-animated.  <a href="#2131a8693a84e29036ffff69955a2ec1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#42ff192210ffc61a4c9fe8184b466b17">setHardwareSkinning</a> (bool on)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allows to enable hardware skinning.  <a href="#42ff192210ffc61a4c9fe8184b466b17"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#fbb087c018dac08007ff5d22c6fe86b9">setInterpolationMode</a> (<a class="el" href="namespaceirr_1_1scene.html#26f30865cf5527e7255a8495e280314c">E_INTERPOLATION_MODE</a> mode)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets Interpolation Mode.  <a href="#fbb087c018dac08007ff5d22c6fe86b9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#3bd5dd1429c13bce259557875a5bbe7d">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="#3bd5dd1429c13bce259557875a5bbe7d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#19f264883a006d68b44f8b81d8ff5927">updateNormalsWhenAnimating</a> (bool on)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Update Normals when Animating.  <a href="#19f264883a006d68b44f8b81d8ff5927"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap 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#1d7d56472adeb21aada79c361bf142be">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="#1d7d56472adeb21aada79c361bf142be"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Classes</h2></td></tr>
<tr><td class="memItemLeft" nowrap 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" nowrap 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" nowrap 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" nowrap 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" nowrap 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>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Interface for using some special functions of Skinned meshes. 
<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" name="713edfbc7f3e9394487882156dc6fe2f"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addJoint" ref="713edfbc7f3e9394487882156dc6fe2f" 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><p>
<a class="anchor" name="bc55b0dc2c1e80ef5fa4cab8e17b76af"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addMeshBuffer" ref="bc55b0dc2c1e80ef5fa4cab8e17b76af" 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><p>
<a class="anchor" name="4441937c52c1fdf3d2bbaeff1406716d"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addPositionKey" ref="4441937c52c1fdf3d2bbaeff1406716d" 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><p>
<a class="anchor" name="b5d41c1fc22de5d7cb9c376d2a873ab9"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addRotationKey" ref="b5d41c1fc22de5d7cb9c376d2a873ab9" 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><p>
<a class="anchor" name="3601a01c99594fe8db3cccaec89df7d6"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addScaleKey" ref="3601a01c99594fe8db3cccaec89df7d6" 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><p>
<a class="anchor" name="6b79ee2544eb0ffe8501c06fd347ea89"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::addWeight" ref="6b79ee2544eb0ffe8501c06fd347ea89" 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><p>
<a class="anchor" name="5cbb9dad48413636f9e9c2ac9201cfae"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::animateMesh" ref="5cbb9dad48413636f9e9c2ac9201cfae" 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#0277be98d67dc26ff93b1a6a1d086b07">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#0277be98d67dc26ff93b1a6a1d086b07">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><p>
<a class="anchor" name="e63f3f1a74bf38c4b5113e3a5b96c0f3"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::convertMeshToTangents" ref="e63f3f1a74bf38c4b5113e3a5b96c0f3" 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>
E.g. used for bump mapping. 
</div>
</div><p>
<a class="anchor" name="83549df06904513c439c92e34b424b02"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::finalize" ref="83549df06904513c439c92e34b424b02" 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><p>
<a class="anchor" name="8dcc5dc083cd93a349acd0a2e01da539"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getAllJoints" ref="8dcc5dc083cd93a349acd0a2e01da539" 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><p>
<a class="anchor" name="4fcdc38666f24a092191668ff909936f"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getAllJoints" ref="4fcdc38666f24a092191668ff909936f" 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><p>
<a class="anchor" name="7715fb82ffec225d2fd9b8aa860e3c38"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getJointCount" ref="7715fb82ffec225d2fd9b8aa860e3c38" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="namespaceirr.html#0416a53257075833e7002efd0a18e804">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" compact><dt><b>Returns:</b></dt><dd>Amount of joints in the skeletal animated mesh. </dd></dl>

</div>
</div><p>
<a class="anchor" name="b28aed78a7e2eeaa20ba7eb0eb082ba4"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getJointName" ref="b28aed78a7e2eeaa20ba7eb0eb082ba4" 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#9395eaea339bcb546b319e9c96bf7410">c8</a>* irr::scene::ISkinnedMesh::getJointName           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="namespaceirr.html#0416a53257075833e7002efd0a18e804">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 compact><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#7715fb82ffec225d2fd9b8aa860e3c38" title="Gets joint count.">getJointCount()</a>-1; </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Name of joint and null if an error happened. </dd></dl>

</div>
</div><p>
<a class="anchor" name="ce7288f54490d017efebe24c3eb46ab8"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getJointNumber" ref="ce7288f54490d017efebe24c3eb46ab8" 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#c66849b7a6ed16e30ebede579f9b47c6">s32</a> irr::scene::ISkinnedMesh::getJointNumber           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="namespaceirr.html#9395eaea339bcb546b319e9c96bf7410">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 compact><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>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Number of the joint or -1 if not found. </dd></dl>

</div>
</div><p>
<a class="anchor" name="5c46b784d6e8b7479e6f630377ab42ef"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::getMeshBuffers" ref="5c46b784d6e8b7479e6f630377ab42ef" 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><p>
<a class="anchor" name="2131a8693a84e29036ffff69955a2ec1"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::isStatic" ref="2131a8693a84e29036ffff69955a2ec1" 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><p>
<a class="anchor" name="42ff192210ffc61a4c9fe8184b466b17"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::setHardwareSkinning" ref="42ff192210ffc61a4c9fe8184b466b17" 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><p>
<a class="anchor" name="fbb087c018dac08007ff5d22c6fe86b9"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::setInterpolationMode" ref="fbb087c018dac08007ff5d22c6fe86b9" 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#26f30865cf5527e7255a8495e280314c">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><p>
<a class="anchor" name="3bd5dd1429c13bce259557875a5bbe7d"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::skinMesh" ref="3bd5dd1429c13bce259557875a5bbe7d" 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><p>
<a class="anchor" name="19f264883a006d68b44f8b81d8ff5927"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::updateNormalsWhenAnimating" ref="19f264883a006d68b44f8b81d8ff5927" 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 compact><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>
</dl>

</div>
</div><p>
<a class="anchor" name="1d7d56472adeb21aada79c361bf142be"></a><!-- doxytag: member="irr::scene::ISkinnedMesh::useAnimationFrom" ref="1d7d56472adeb21aada79c361bf142be" 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>
The animation is linked (not copied) based on joint names so make sure they are unique. <dl class="return" compact><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><p>
<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></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-2009 by Nikolaus Gebhardt. Generated 
        on Sun Jan 10 09:24:16 2010 by <a href="http://www.doxygen.org" target="_blank">Doxygen</a> 
        (1.5.6)</font></em></small></div></td>
  </tr>
</table>
<address style="align: right;">
</address>
</body>
</html>