Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > bad97183153701b09df5fae1052b1c30 > files > 3789

crystalspace-doc-1.2.1-5mdv2010.0.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>Crystal Space 1.2.1: iSpriteCal3DFactoryState Struct Reference (Crystal Space 1.2.1 Public API Reference)</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<table border="0" cellpadding="0" cellspacing="0" width="100%" class="head">
 <tr height="59">
  <td class="head" width="202" valign="bottom" style="padding-left:0;"><a href="http://www.crystalspace3d.org/"><img src="csblur.png" width="236" height="59" alt="CrystalSpace" border="0"></a></td>
  <td class="head"><h2>Public API Reference</h2></td>
 </tr>
 <tr height="11">
  <td colspan="2" class="headshadow" valign="top" style="padding-left:0;"><img src="csblurb.png" width="236" height="11" alt="" border="0"></td>
 </tr>
</table>
<div class="content">
<!-- Generated by Doxygen 1.5.3 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li class="current"><a href="classes.html"><span>Classes</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul>
</div>
<h1>iSpriteCal3DFactoryState Struct Reference<br>
<small>
[<a class="el" href="group__meshplugins.html">Mesh plugins</a>]</small>
</h1><!-- doxytag: class="iSpriteCal3DFactoryState" --><!-- doxytag: inherits="iBase" -->This interface describes the API for the 3D sprite factory mesh object.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="spritecal3d_8h-source.html">imesh/spritecal3d.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for iSpriteCal3DFactoryState:</div>
<div class="dynsection">
<p><center><img src="structiSpriteCal3DFactoryState__inherit__graph.png" border="0" usemap="#iSpriteCal3DFactoryState__inherit__map" alt="Inheritance graph"></center>
<map name="iSpriteCal3DFactoryState__inherit__map">
<area shape="rect" href="structiBase.html" title="This is the basic interface: all other interfaces should be derived from this one..." alt="" coords="71,7,127,33"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="structiSpriteCal3DFactoryState-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 bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#018798fba6b374800419e05bc30059fe">AddCoreMaterial</a> (<a class="el" href="structiMaterialWrapper.html">iMaterialWrapper</a> *mat)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This jams a <a class="el" href="namespaceCS.html" title="Main namespace for CrystalSpace.">CS</a> material into a cal3d material struct.  <a href="#018798fba6b374800419e05bc30059fe"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#8d0087c6f57f4dd48168fa192a0c1326">AddMorphAnimation</a> (const char *name)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This adds a new morph animation.  <a href="#8d0087c6f57f4dd48168fa192a0c1326"></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="structiSpriteCal3DFactoryState.html#77a1c0567cee8b66af6db775b815d6fb">AddMorphTarget</a> (int morphanimation_index, const char *mesh_name, const char *morphtarget_name)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This adds a mesh and one of its morph target to the given morph animation.  <a href="#77a1c0567cee8b66af6db775b815d6fb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <br>
<a class="el" href="structiSpriteCal3DSocket.html">iSpriteCal3DSocket</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#09d9b8459a3e275e94d06d7e1d64de87">AddSocket</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Create and add a new socket to the sprite.  <a href="#09d9b8459a3e275e94d06d7e1d64de87"></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="structiSpriteCal3DFactoryState.html#291540e54cdd3f185ad121697e9a34bc">BindMaterials</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cal3d requires extra initialization once all materials are loaded.  <a href="#291540e54cdd3f185ad121697e9a34bc"></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="structiSpriteCal3DFactoryState.html#38a8d5377a7635dc06b1bc23824da677">CalculateAllBoneBoundingBoxes</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Does internal cal3d prep work for doing fast bbox calcs later.  <a href="#38a8d5377a7635dc06b1bc23824da677"></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="structiSpriteCal3DFactoryState.html#41ddc479608341a129d540057cc07b5c">Create</a> (const char *name)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize internal Cal3d data structures.  <a href="#41ddc479608341a129d540057cc07b5c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#994a58268fd30d7f6822d1532f5b12f9">FindMeshName</a> (const char *meshName)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the index of the specified mesh name, or -1 if not found.  <a href="#994a58268fd30d7f6822d1532f5b12f9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#cf1af3b3204f8710c2e99b7e52c93c79">FindMorphAnimationName</a> (const char *meshName)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the index of the specified morph animation name, or -1 if not found.  <a href="#cf1af3b3204f8710c2e99b7e52c93c79"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <br>
<a class="el" href="structiSpriteCal3DSocket.html">iSpriteCal3DSocket</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#b69aebd8478eab79676e53085942a971">FindSocket</a> (<a class="el" href="structiMeshWrapper.html">iMeshWrapper</a> *mesh) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">find a socked based on the sprite attached to it.  <a href="#b69aebd8478eab79676e53085942a971"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <br>
<a class="el" href="structiSpriteCal3DSocket.html">iSpriteCal3DSocket</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#f7a72e51546eaec00f5d4df73cf4d83d">FindSocket</a> (const char *name) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">find a named socket into the sprite.  <a href="#f7a72e51546eaec00f5d4df73cf4d83d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual CalCoreModel *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#f30e4b77917acc0636229c6896cae71c">GetCal3DCoreModel</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This gives you access to the internal Cal3d Core Model class which sprcal3dfact wraps.  <a href="#f30e4b77917acc0636229c6896cae71c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#490e7e849fb65a5aa8bb1a3bf433af8b">GetDefaultMaterial</a> (const char *meshName)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the name of the default material that should go on this mesh.  <a href="#490e7e849fb65a5aa8bb1a3bf433af8b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#59c661dacef0e3e641d6d5504a8e3308">GetMeshCount</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the count of all the meshes available for attachment to the core model.  <a href="#59c661dacef0e3e641d6d5504a8e3308"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#9f82a9ddd58e8745f215520d929fb2c5">GetMeshName</a> (int idx)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the xml name of the mesh at a certain index in the array.  <a href="#9f82a9ddd58e8745f215520d929fb2c5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#eba4a74009d80f9e8631cfb29592d5bb">GetMorphAnimationCount</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the count of all Morph animations of this core model.  <a href="#eba4a74009d80f9e8631cfb29592d5bb"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#e045e77a262f66a7207953eeef9b60d5">GetMorphAnimationName</a> (int idx)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the xml name of the morph animation at a certain index in the array.  <a href="#e045e77a262f66a7207953eeef9b60d5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#949971cf2026ff06fecac08592e08b42">GetMorphTargetCount</a> (int mesh_id)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns the number of morph targets of a mesh.  <a href="#949971cf2026ff06fecac08592e08b42"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <br>
<a class="el" href="structiSpriteCal3DSocket.html">iSpriteCal3DSocket</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#027e62ee297701a08d043923a1db69a6">GetSocket</a> (int f) const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Query the socket number f.  <a href="#027e62ee297701a08d043923a1db69a6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#085d52f8c14390e546c79fe10f6ea4bd">GetSocketCount</a> () const =0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Query the number of sockets.  <a href="#085d52f8c14390e546c79fe10f6ea4bd"></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="structiSpriteCal3DFactoryState.html#9e65f70f6d400f716f68bfccb3e762ce">IsMeshDefault</a> (int idx)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Returns whether the mesh is a default mesh or not.  <a href="#9e65f70f6d400f716f68bfccb3e762ce"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#c6a127146394f5b7464990756e818c00">LoadCoreAnimation</a> (<a class="el" href="structiVFS.html">iVFS</a> *vfs, const char *filename, const char *name, int type, float base_velocity, float min_velocity, float max_velocity, int min_interval, int max_interval, int idle_pct, bool lock)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This loads the supplied file as one animation action for the sprite.  <a href="#c6a127146394f5b7464990756e818c00"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#54b3f8e103b009861543a3ba219bfe91">LoadCoreMesh</a> (<a class="el" href="structiVFS.html">iVFS</a> *vfs, const char *filename, const char *name, bool attach, <a class="el" href="structiMaterialWrapper.html">iMaterialWrapper</a> *defmat)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This loads a submesh which will attach to this skeleton.  <a href="#54b3f8e103b009861543a3ba219bfe91"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structiSpriteCal3DFactoryState.html#2e7e3f9e8b96ceb188fcfab4f16ecab8">LoadCoreMorphTarget</a> (<a class="el" href="structiVFS.html">iVFS</a> *vfs, int mesh_index, const char *filename, const char *name)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This adds a mesh as a morph target of another mesh.  <a href="#2e7e3f9e8b96ceb188fcfab4f16ecab8"></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="structiSpriteCal3DFactoryState.html#d066e0596f6d36a14e50fe7ad86af22a">LoadCoreSkeleton</a> (<a class="el" href="structiVFS.html">iVFS</a> *vfs, const char *filename)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This loads the supplied file as the skeleton data for the sprite.  <a href="#d066e0596f6d36a14e50fe7ad86af22a"></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="structiSpriteCal3DFactoryState.html#562565977a59eef72d46632066124575">RegisterAnimCallback</a> (const char *anim, CalAnimationCallback *callback, float min_interval)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function will attach a callback to the Core Anim, to be called whenever the min_interval passes and this animation is active.  <a href="#562565977a59eef72d46632066124575"></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="structiSpriteCal3DFactoryState.html#98852ec2f62c8cb61cb38768f25c66af">RemoveAnimCallback</a> (const char *anim, CalAnimationCallback *callback)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function should be called to remove callbacks when the meshfact is destroyed.  <a href="#98852ec2f62c8cb61cb38768f25c66af"></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="structiSpriteCal3DFactoryState.html#e23d722258abe753b5b08073d68721b4">ReportLastError</a> ()=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This prints the message if any cal3d function is unsuccessful.  <a href="#e23d722258abe753b5b08073d68721b4"></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="structiSpriteCal3DFactoryState.html#9339e3fa5c01f476dbef4c4e474e07d1">RescaleFactory</a> (float factor)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function resizes all instances of this factory permanently.  <a href="#9339e3fa5c01f476dbef4c4e474e07d1"></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="structiSpriteCal3DFactoryState.html#5c6a8aeaa3d05e3492422d7523dd9c0c">SetBasePath</a> (const char *path)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This sets the path to which other filenames will be appended before loading.  <a href="#5c6a8aeaa3d05e3492422d7523dd9c0c"></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="structiSpriteCal3DFactoryState.html#7c225c3fbc2dc73435f28fd36802b2f7">SetLoadFlags</a> (int flags)=0</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This function sets the flags, which the factory sets in CalLoader when loading new models.  <a href="#7c225c3fbc2dc73435f28fd36802b2f7"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
This interface describes the API for the 3D sprite factory mesh object. 
<p>Definition at line <a class="el" href="spritecal3d_8h-source.html#l00097">97</a> of file <a class="el" href="spritecal3d_8h-source.html">spritecal3d.h</a>.</p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="018798fba6b374800419e05bc30059fe"></a><!-- doxytag: member="iSpriteCal3DFactoryState::AddCoreMaterial" ref="018798fba6b374800419e05bc30059fe" args="(iMaterialWrapper *mat)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool iSpriteCal3DFactoryState::AddCoreMaterial           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiMaterialWrapper.html">iMaterialWrapper</a> *&nbsp;</td>
          <td class="paramname"> <em>mat</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This jams a <a class="el" href="namespaceCS.html" title="Main namespace for CrystalSpace.">CS</a> material into a cal3d material struct. 
<p>
Don't try this at home! 
</div>
</div><p>
<a class="anchor" name="8d0087c6f57f4dd48168fa192a0c1326"></a><!-- doxytag: member="iSpriteCal3DFactoryState::AddMorphAnimation" ref="8d0087c6f57f4dd48168fa192a0c1326" args="(const char *name)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::AddMorphAnimation           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This adds a new morph animation. 
<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>The name of morph animation. </td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The index of the morph animation. </dd></dl>

</div>
</div><p>
<a class="anchor" name="77a1c0567cee8b66af6db775b815d6fb"></a><!-- doxytag: member="iSpriteCal3DFactoryState::AddMorphTarget" ref="77a1c0567cee8b66af6db775b815d6fb" args="(int morphanimation_index, const char *mesh_name, const char *morphtarget_name)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool iSpriteCal3DFactoryState::AddMorphTarget           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>morphanimation_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>mesh_name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>morphtarget_name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This adds a mesh and one of its morph target to the given morph animation. 
<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>morphanimation_index</em>&nbsp;</td><td>The index of the morph animation. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mesh_name</em>&nbsp;</td><td>The name of the mesh. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>morphtarget_name</em>&nbsp;</td><td>The name of the morph target of the mesh.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>True if successfull. </dd></dl>

</div>
</div><p>
<a class="anchor" name="09d9b8459a3e275e94d06d7e1d64de87"></a><!-- doxytag: member="iSpriteCal3DFactoryState::AddSocket" ref="09d9b8459a3e275e94d06d7e1d64de87" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structiSpriteCal3DSocket.html">iSpriteCal3DSocket</a>* iSpriteCal3DFactoryState::AddSocket           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create and add a new socket to the sprite. 
<p>

</div>
</div><p>
<a class="anchor" name="291540e54cdd3f185ad121697e9a34bc"></a><!-- doxytag: member="iSpriteCal3DFactoryState::BindMaterials" ref="291540e54cdd3f185ad121697e9a34bc" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iSpriteCal3DFactoryState::BindMaterials           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Cal3d requires extra initialization once all materials are loaded. 
<p>
The loader calls this at the appropriate time automatically. 
</div>
</div><p>
<a class="anchor" name="38a8d5377a7635dc06b1bc23824da677"></a><!-- doxytag: member="iSpriteCal3DFactoryState::CalculateAllBoneBoundingBoxes" ref="38a8d5377a7635dc06b1bc23824da677" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iSpriteCal3DFactoryState::CalculateAllBoneBoundingBoxes           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Does internal cal3d prep work for doing fast bbox calcs later. 
<p>

</div>
</div><p>
<a class="anchor" name="41ddc479608341a129d540057cc07b5c"></a><!-- doxytag: member="iSpriteCal3DFactoryState::Create" ref="41ddc479608341a129d540057cc07b5c" args="(const char *name)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool iSpriteCal3DFactoryState::Create           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize internal Cal3d data structures. 
<p>

</div>
</div><p>
<a class="anchor" name="994a58268fd30d7f6822d1532f5b12f9"></a><!-- doxytag: member="iSpriteCal3DFactoryState::FindMeshName" ref="994a58268fd30d7f6822d1532f5b12f9" args="(const char *meshName)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::FindMeshName           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>meshName</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the index of the specified mesh name, or -1 if not found. 
<p>

</div>
</div><p>
<a class="anchor" name="cf1af3b3204f8710c2e99b7e52c93c79"></a><!-- doxytag: member="iSpriteCal3DFactoryState::FindMorphAnimationName" ref="cf1af3b3204f8710c2e99b7e52c93c79" args="(const char *meshName)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::FindMorphAnimationName           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>meshName</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the index of the specified morph animation name, or -1 if not found. 
<p>

</div>
</div><p>
<a class="anchor" name="b69aebd8478eab79676e53085942a971"></a><!-- doxytag: member="iSpriteCal3DFactoryState::FindSocket" ref="b69aebd8478eab79676e53085942a971" args="(iMeshWrapper *mesh) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structiSpriteCal3DSocket.html">iSpriteCal3DSocket</a>* iSpriteCal3DFactoryState::FindSocket           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiMeshWrapper.html">iMeshWrapper</a> *&nbsp;</td>
          <td class="paramname"> <em>mesh</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
find a socked based on the sprite attached to it. 
<p>

</div>
</div><p>
<a class="anchor" name="f7a72e51546eaec00f5d4df73cf4d83d"></a><!-- doxytag: member="iSpriteCal3DFactoryState::FindSocket" ref="f7a72e51546eaec00f5d4df73cf4d83d" args="(const char *name) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structiSpriteCal3DSocket.html">iSpriteCal3DSocket</a>* iSpriteCal3DFactoryState::FindSocket           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
find a named socket into the sprite. 
<p>

</div>
</div><p>
<a class="anchor" name="f30e4b77917acc0636229c6896cae71c"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetCal3DCoreModel" ref="f30e4b77917acc0636229c6896cae71c" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual CalCoreModel* iSpriteCal3DFactoryState::GetCal3DCoreModel           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This gives you access to the internal Cal3d Core Model class which sprcal3dfact wraps. 
<p>
If you use it directly, you run the risk of making sprcal3dfact and CalCoreModel get out of sync. Use carefully! 
</div>
</div><p>
<a class="anchor" name="490e7e849fb65a5aa8bb1a3bf433af8b"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetDefaultMaterial" ref="490e7e849fb65a5aa8bb1a3bf433af8b" args="(const char *meshName)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* iSpriteCal3DFactoryState::GetDefaultMaterial           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>meshName</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the name of the default material that should go on this mesh. 
<p>

</div>
</div><p>
<a class="anchor" name="59c661dacef0e3e641d6d5504a8e3308"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetMeshCount" ref="59c661dacef0e3e641d6d5504a8e3308" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::GetMeshCount           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the count of all the meshes available for attachment to the core model. 
<p>

</div>
</div><p>
<a class="anchor" name="9f82a9ddd58e8745f215520d929fb2c5"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetMeshName" ref="9f82a9ddd58e8745f215520d929fb2c5" args="(int idx)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* iSpriteCal3DFactoryState::GetMeshName           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>idx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the xml name of the mesh at a certain index in the array. 
<p>

</div>
</div><p>
<a class="anchor" name="eba4a74009d80f9e8631cfb29592d5bb"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetMorphAnimationCount" ref="eba4a74009d80f9e8631cfb29592d5bb" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::GetMorphAnimationCount           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the count of all Morph animations of this core model. 
<p>

</div>
</div><p>
<a class="anchor" name="e045e77a262f66a7207953eeef9b60d5"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetMorphAnimationName" ref="e045e77a262f66a7207953eeef9b60d5" args="(int idx)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* iSpriteCal3DFactoryState::GetMorphAnimationName           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>idx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the xml name of the morph animation at a certain index in the array. 
<p>

</div>
</div><p>
<a class="anchor" name="949971cf2026ff06fecac08592e08b42"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetMorphTargetCount" ref="949971cf2026ff06fecac08592e08b42" args="(int mesh_id)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::GetMorphTargetCount           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>mesh_id</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns the number of morph targets of a mesh. 
<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>mesh_id</em>&nbsp;</td><td>The id of the mesh.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The number of morph targets of a mesh. -1 if something went wrong. </dd></dl>

</div>
</div><p>
<a class="anchor" name="027e62ee297701a08d043923a1db69a6"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetSocket" ref="027e62ee297701a08d043923a1db69a6" args="(int f) const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="structiSpriteCal3DSocket.html">iSpriteCal3DSocket</a>* iSpriteCal3DFactoryState::GetSocket           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>f</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Query the socket number f. 
<p>

</div>
</div><p>
<a class="anchor" name="085d52f8c14390e546c79fe10f6ea4bd"></a><!-- doxytag: member="iSpriteCal3DFactoryState::GetSocketCount" ref="085d52f8c14390e546c79fe10f6ea4bd" args="() const =0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::GetSocketCount           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Query the number of sockets. 
<p>

</div>
</div><p>
<a class="anchor" name="9e65f70f6d400f716f68bfccb3e762ce"></a><!-- doxytag: member="iSpriteCal3DFactoryState::IsMeshDefault" ref="9e65f70f6d400f716f68bfccb3e762ce" args="(int idx)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool iSpriteCal3DFactoryState::IsMeshDefault           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>idx</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Returns whether the mesh is a default mesh or not. 
<p>

</div>
</div><p>
<a class="anchor" name="c6a127146394f5b7464990756e818c00"></a><!-- doxytag: member="iSpriteCal3DFactoryState::LoadCoreAnimation" ref="c6a127146394f5b7464990756e818c00" args="(iVFS *vfs, const char *filename, const char *name, int type, float base_velocity, float min_velocity, float max_velocity, int min_interval, int max_interval, int idle_pct, bool lock)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::LoadCoreAnimation           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiVFS.html">iVFS</a> *&nbsp;</td>
          <td class="paramname"> <em>vfs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>filename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>base_velocity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>min_velocity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>max_velocity</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>min_interval</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>max_interval</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>idle_pct</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>lock</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This loads the supplied file as one animation action for the sprite. 
<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>vfs</em>&nbsp;</td><td>The ref to the vfs plugin used when loading the anim file </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>filename</em>&nbsp;</td><td>The VFS path to the anim file. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>The animation's name. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>The type of anim this file represents. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>base_velocity</em>&nbsp;</td><td>On movement type anims, this represents the native traversal speed of the model implied by this animation. For example, a "walk" anim might specify 2m/sec. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>min_velocity</em>&nbsp;</td><td>On movement type anims, this represents the minimum velocity for which this animation should be considered or used. The anim will be blended with other anims to achieve the desired exact velocity. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>max_velocity</em>&nbsp;</td><td>Same thing for max velocity for this anim to be blended in. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>min_interval</em>&nbsp;</td><td>When the anim of type "idle" is playing, the model will randomly choose override actions to play every so often to enhance the realism of the idle. (Thus a "standing" creature might shift his feet or scratch his nose every 30 seconds or so.) This param is the minimum time between these overrides. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>max_interval</em>&nbsp;</td><td>Max interval between these override idle actions. The model will randomly choose a time between min and max. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>idle_pct</em>&nbsp;</td><td>For anims of type action, if the model is idling it will randomly choose among these based on the idle_pct weights specified here. This param should total 100 across all anims for the model if used. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>lock</em>&nbsp;</td><td>This specifies whether the animation is to be locked on last frame or not. If not locked, the action will return to the base keyframe when complete. If locked, the action will stay in the final keyframe position until cleared. (This is usually for anims like "death".) </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="54b3f8e103b009861543a3ba219bfe91"></a><!-- doxytag: member="iSpriteCal3DFactoryState::LoadCoreMesh" ref="54b3f8e103b009861543a3ba219bfe91" args="(iVFS *vfs, const char *filename, const char *name, bool attach, iMaterialWrapper *defmat)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::LoadCoreMesh           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiVFS.html">iVFS</a> *&nbsp;</td>
          <td class="paramname"> <em>vfs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>filename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">bool&nbsp;</td>
          <td class="paramname"> <em>attach</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="structiMaterialWrapper.html">iMaterialWrapper</a> *&nbsp;</td>
          <td class="paramname"> <em>defmat</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This loads a submesh which will attach to this skeleton. 
<p>
filename is the native system filename of the mesh file. name is the logical name which will be used by the mesh object to attach and detach this mesh. attach should be true if this mesh should be part of the mesh object after it is first created, or false if it will be optionally added later. defmat is the material which should be used when the object is created, if any. 
</div>
</div><p>
<a class="anchor" name="2e7e3f9e8b96ceb188fcfab4f16ecab8"></a><!-- doxytag: member="iSpriteCal3DFactoryState::LoadCoreMorphTarget" ref="2e7e3f9e8b96ceb188fcfab4f16ecab8" args="(iVFS *vfs, int mesh_index, const char *filename, const char *name)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int iSpriteCal3DFactoryState::LoadCoreMorphTarget           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiVFS.html">iVFS</a> *&nbsp;</td>
          <td class="paramname"> <em>vfs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>mesh_index</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>filename</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This adds a mesh as a morph target of another mesh. 
<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>vfs</em>&nbsp;</td><td>The VFS object where `filename' resides. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mesh_index</em>&nbsp;</td><td>The index of the mesh we are going to add a morph target to. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>filename</em>&nbsp;</td><td>The name of the file of the mesh of the morph tarrget. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>The name of the morph target.</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>The index of the morph target. </dd></dl>

</div>
</div><p>
<a class="anchor" name="d066e0596f6d36a14e50fe7ad86af22a"></a><!-- doxytag: member="iSpriteCal3DFactoryState::LoadCoreSkeleton" ref="d066e0596f6d36a14e50fe7ad86af22a" args="(iVFS *vfs, const char *filename)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool iSpriteCal3DFactoryState::LoadCoreSkeleton           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="structiVFS.html">iVFS</a> *&nbsp;</td>
          <td class="paramname"> <em>vfs</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>filename</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This loads the supplied file as the skeleton data for the sprite. 
<p>

</div>
</div><p>
<a class="anchor" name="562565977a59eef72d46632066124575"></a><!-- doxytag: member="iSpriteCal3DFactoryState::RegisterAnimCallback" ref="562565977a59eef72d46632066124575" args="(const char *anim, CalAnimationCallback *callback, float min_interval)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool iSpriteCal3DFactoryState::RegisterAnimCallback           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>anim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CalAnimationCallback *&nbsp;</td>
          <td class="paramname"> <em>callback</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>min_interval</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This function will attach a callback to the Core Anim, to be called whenever the min_interval passes and this animation is active. 
<p>

</div>
</div><p>
<a class="anchor" name="98852ec2f62c8cb61cb38768f25c66af"></a><!-- doxytag: member="iSpriteCal3DFactoryState::RemoveAnimCallback" ref="98852ec2f62c8cb61cb38768f25c66af" args="(const char *anim, CalAnimationCallback *callback)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool iSpriteCal3DFactoryState::RemoveAnimCallback           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>anim</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CalAnimationCallback *&nbsp;</td>
          <td class="paramname"> <em>callback</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This function should be called to remove callbacks when the meshfact is destroyed. 
<p>

</div>
</div><p>
<a class="anchor" name="e23d722258abe753b5b08073d68721b4"></a><!-- doxytag: member="iSpriteCal3DFactoryState::ReportLastError" ref="e23d722258abe753b5b08073d68721b4" args="()=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iSpriteCal3DFactoryState::ReportLastError           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This prints the message if any cal3d function is unsuccessful. 
<p>
There is no way I can see to retrieve the string and use cs report with it. 
</div>
</div><p>
<a class="anchor" name="9339e3fa5c01f476dbef4c4e474e07d1"></a><!-- doxytag: member="iSpriteCal3DFactoryState::RescaleFactory" ref="9339e3fa5c01f476dbef4c4e474e07d1" args="(float factor)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iSpriteCal3DFactoryState::RescaleFactory           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>factor</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This function resizes all instances of this factory permanently. 
<p>
Factor=1 means no change. 
</div>
</div><p>
<a class="anchor" name="5c6a8aeaa3d05e3492422d7523dd9c0c"></a><!-- doxytag: member="iSpriteCal3DFactoryState::SetBasePath" ref="5c6a8aeaa3d05e3492422d7523dd9c0c" args="(const char *path)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iSpriteCal3DFactoryState::SetBasePath           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>path</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This sets the path to which other filenames will be appended before loading. 
<p>

</div>
</div><p>
<a class="anchor" name="7c225c3fbc2dc73435f28fd36802b2f7"></a><!-- doxytag: member="iSpriteCal3DFactoryState::SetLoadFlags" ref="7c225c3fbc2dc73435f28fd36802b2f7" args="(int flags)=0" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void iSpriteCal3DFactoryState::SetLoadFlags           </td>
          <td>(</td>
          <td class="paramtype">int&nbsp;</td>
          <td class="paramname"> <em>flags</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [pure virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This function sets the flags, which the factory sets in CalLoader when loading new models. 
<p>

</div>
</div><p>
<hr>The documentation for this struct was generated from the following file:<ul>
<li>imesh/<a class="el" href="spritecal3d_8h-source.html">spritecal3d.h</a></ul>
<hr size="1"><address><small>Generated for Crystal Space 1.2.1 by 
<a href="http://www.doxygen.org/index.html">doxygen</a> 1.5.3 
</small></address> </div></body> </html>