<!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: csColliderActor Class 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 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 Pages</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <h1>csColliderActor Class Reference</h1><!-- doxytag: class="csColliderActor" -->With <a class="el" href="classcsColliderActor.html" title="With csColliderActor you can more easily manage collision detection of a player or...">csColliderActor</a> you can more easily manage collision detection of a player or character model with gravity handling. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="cstool_2collider_8h-source.html">cstool/collider.h</a>></code> <p> <p> <a href="classcsColliderActor-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">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#4fddf9fc57a99b266da9f41332ee7e66">AdjustForCollisions</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &oldpos, <a class="el" href="classcsVector3.html">csVector3</a> &newpos, const <a class="el" href="classcsVector3.html">csVector3</a> &vel, float delta)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">This is used by <a class="el" href="classcsColliderActor.html#7a3ab6293bdab2a0fb33928e0238d763" title="Move the model.">Move()</a> but you can also call it manually. <a href="#4fddf9fc57a99b266da9f41332ee7e66"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#fe9e6444d676a48da69bab40db8bd764">CheckHitMeshes</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if we remember the meshes we hit. <a href="#fe9e6444d676a48da69bab40db8bd764"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#e592ea8ebe979c4c70ccdc9dab35013d">CheckRevertMove</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if we should revert a move (revert rotation). <a href="#e592ea8ebe979c4c70ccdc9dab35013d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#26bdfd5dc9bbb10eced824893ef16d86">csColliderActor</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct. <a href="#26bdfd5dc9bbb10eced824893ef16d86"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#cdca1999a827c7528157bd71967882c9">EnableHitMeshes</a> (bool hm)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Enable remembering of the meshes we hit. <a href="#cdca1999a827c7528157bd71967882c9"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#9583357057cd8abd43f9f8f4b1d32471">GetGravity</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get gravity. <a href="#9583357057cd8abd43f9f8f4b1d32471"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classcsSet.html">csSet</a><br> < <a class="el" href="classcsPtrKey.html">csPtrKey</a><br> < <a class="el" href="structiMeshWrapper.html">iMeshWrapper</a> > > & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#26361be9d07bce4ba44f768d7e1f4984">GetHitMeshes</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the meshes that we hit in the last call to <a class="el" href="classcsColliderActor.html#7a3ab6293bdab2a0fb33928e0238d763" title="Move the model.">Move()</a>. <a href="#26361be9d07bce4ba44f768d7e1f4984"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classcsVector3.html">csVector3</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#77c11cb9d7be5f66843ff2a386180993">GetRotation</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get current rotation in angles around every axis. <a href="#77c11cb9d7be5f66843ff2a386180993"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#234e57c8f766187ea682ef460592e41b">HasCD</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return true if collision detection is enabled. <a href="#234e57c8f766187ea682ef460592e41b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#cbf75d32f87155b928538b621958cfce">InitializeColliders</a> (<a class="el" href="structiCamera.html">iCamera</a> *camera, const <a class="el" href="classcsVector3.html">csVector3</a> &legs, const <a class="el" href="classcsVector3.html">csVector3</a> &body, const <a class="el" href="classcsVector3.html">csVector3</a> &shift)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialize the colliders. <a href="#cbf75d32f87155b928538b621958cfce"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#3584b5c89982971b40c6295df880cb55">InitializeColliders</a> (<a class="el" href="structiMeshWrapper.html">iMeshWrapper</a> *mesh, const <a class="el" href="classcsVector3.html">csVector3</a> &legs, const <a class="el" href="classcsVector3.html">csVector3</a> &body, const <a class="el" href="classcsVector3.html">csVector3</a> &shift)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Initialize the colliders. <a href="#3584b5c89982971b40c6295df880cb55"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#134ff5231004996e7bb4144391937592">IsOnGround</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Check if we are on the ground. <a href="#134ff5231004996e7bb4144391937592"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#7a3ab6293bdab2a0fb33928e0238d763">Move</a> (float delta, float speed, const <a class="el" href="classcsVector3.html">csVector3</a> &velBody, const <a class="el" href="classcsVector3.html">csVector3</a> &angularVelocity)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Move the model. <a href="#7a3ab6293bdab2a0fb33928e0238d763"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#68b596150ae08abc70f8b232362f7af7">SetCamera</a> (<a class="el" href="structiCamera.html">iCamera</a> *camera, bool adjustRotation=true)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Change the current camera. <a href="#68b596150ae08abc70f8b232362f7af7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#e9356b7d49bb8c30178d06d390a24cee">SetCD</a> (bool c)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Enable/disable collision detection (default enabled). <a href="#e9356b7d49bb8c30178d06d390a24cee"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#7550ff53e6cc721df1076c4938ad0257">SetCollideSystem</a> (<a class="el" href="structiCollideSystem.html">iCollideSystem</a> *cdsys)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the collision detection system. <a href="#7550ff53e6cc721df1076c4938ad0257"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#7d8f778de41aaf572eb53efce2c8c019">SetEngine</a> (<a class="el" href="structiEngine.html">iEngine</a> *engine)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the engine. <a href="#7d8f778de41aaf572eb53efce2c8c019"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#b0e4be4a3d12a5d4260490d03345e346">SetGravity</a> (float g)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set gravity. <a href="#b0e4be4a3d12a5d4260490d03345e346"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#bb3923fe8709fdd02704e57a81b3d899">SetOnGround</a> (bool og)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the onground status. <a href="#bb3923fe8709fdd02704e57a81b3d899"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsColliderActor.html#d1cd1dc799c496d3f084310457a2f53f">SetRotation</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &rot)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set current rotation. <a href="#d1cd1dc799c496d3f084310457a2f53f"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> With <a class="el" href="classcsColliderActor.html" title="With csColliderActor you can more easily manage collision detection of a player or...">csColliderActor</a> you can more easily manage collision detection of a player or character model with gravity handling. <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00385">385</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="26bdfd5dc9bbb10eced824893ef16d86"></a><!-- doxytag: member="csColliderActor::csColliderActor" ref="26bdfd5dc9bbb10eced824893ef16d86" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">csColliderActor::csColliderActor </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Construct. <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="4fddf9fc57a99b266da9f41332ee7e66"></a><!-- doxytag: member="csColliderActor::AdjustForCollisions" ref="4fddf9fc57a99b266da9f41332ee7e66" args="(const csVector3 &oldpos, csVector3 &newpos, const csVector3 &vel, float delta)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool csColliderActor::AdjustForCollisions </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>oldpos</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>newpos</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>vel</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>delta</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> This is used by <a class="el" href="classcsColliderActor.html#7a3ab6293bdab2a0fb33928e0238d763" title="Move the model.">Move()</a> but you can also call it manually. <p> It will adjust the new position to match with collision detection. </div> </div><p> <a class="anchor" name="fe9e6444d676a48da69bab40db8bd764"></a><!-- doxytag: member="csColliderActor::CheckHitMeshes" ref="fe9e6444d676a48da69bab40db8bd764" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool csColliderActor::CheckHitMeshes </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Return true if we remember the meshes we hit. <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00553">553</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="e592ea8ebe979c4c70ccdc9dab35013d"></a><!-- doxytag: member="csColliderActor::CheckRevertMove" ref="e592ea8ebe979c4c70ccdc9dab35013d" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool csColliderActor::CheckRevertMove </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Check if we should revert a move (revert rotation). <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00542">542</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="cdca1999a827c7528157bd71967882c9"></a><!-- doxytag: member="csColliderActor::EnableHitMeshes" ref="cdca1999a827c7528157bd71967882c9" args="(bool hm)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::EnableHitMeshes </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>hm</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Enable remembering of the meshes we hit. <p> By default this is disabled. If this is enabled you can call <a class="el" href="classcsColliderActor.html#26361be9d07bce4ba44f768d7e1f4984" title="Return the meshes that we hit in the last call to Move().">GetHitMeshes()</a> after calling <a class="el" href="classcsColliderActor.html#7a3ab6293bdab2a0fb33928e0238d763" title="Move the model.">Move()</a> to get a set of all meshes that were hit. <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00550">550</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="9583357057cd8abd43f9f8f4b1d32471"></a><!-- doxytag: member="csColliderActor::GetGravity" ref="9583357057cd8abd43f9f8f4b1d32471" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">float csColliderActor::GetGravity </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get gravity. <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00517">517</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="26361be9d07bce4ba44f768d7e1f4984"></a><!-- doxytag: member="csColliderActor::GetHitMeshes" ref="26361be9d07bce4ba44f768d7e1f4984" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classcsSet.html">csSet</a><<a class="el" href="classcsPtrKey.html">csPtrKey</a><<a class="el" href="structiMeshWrapper.html">iMeshWrapper</a>> >& csColliderActor::GetHitMeshes </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Return the meshes that we hit in the last call to <a class="el" href="classcsColliderActor.html#7a3ab6293bdab2a0fb33928e0238d763" title="Move the model.">Move()</a>. <p> Calling <a class="el" href="classcsColliderActor.html#7a3ab6293bdab2a0fb33928e0238d763" title="Move the model.">Move()</a> again will clear this set and calculate it again. This works only if EnableHitMeshes(true) is called. <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00560">560</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="77c11cb9d7be5f66843ff2a386180993"></a><!-- doxytag: member="csColliderActor::GetRotation" ref="77c11cb9d7be5f66843ff2a386180993" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classcsVector3.html">csVector3</a>& csColliderActor::GetRotation </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get current rotation in angles around every axis. <p> This is only used if a camera is used. <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00582">582</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="234e57c8f766187ea682ef460592e41b"></a><!-- doxytag: member="csColliderActor::HasCD" ref="234e57c8f766187ea682ef460592e41b" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool csColliderActor::HasCD </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Return true if collision detection is enabled. <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00532">532</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="cbf75d32f87155b928538b621958cfce"></a><!-- doxytag: member="csColliderActor::InitializeColliders" ref="cbf75d32f87155b928538b621958cfce" args="(iCamera *camera, const csVector3 &legs, const csVector3 &body, const csVector3 &shift)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::InitializeColliders </td> <td>(</td> <td class="paramtype"><a class="el" href="structiCamera.html">iCamera</a> * </td> <td class="paramname"> <em>camera</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>legs</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>body</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>shift</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Initialize the colliders. <p> This version is used if you have a first person view and want collision detection to move the camera instead of a mesh. <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>camera</em> </td><td>is the camera. </td></tr> <tr><td valign="top"></td><td valign="top"><em>legs</em> </td><td>is the size of the leg collider. </td></tr> <tr><td valign="top"></td><td valign="top"><em>body</em> </td><td>is the size of the body collider. </td></tr> <tr><td valign="top"></td><td valign="top"><em>shift</em> </td><td>is a shift added to the colliders. Normally the origin is assumed to be at the bottom of the model. With this shift you can adjust that. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="3584b5c89982971b40c6295df880cb55"></a><!-- doxytag: member="csColliderActor::InitializeColliders" ref="3584b5c89982971b40c6295df880cb55" args="(iMeshWrapper *mesh, const csVector3 &legs, const csVector3 &body, const csVector3 &shift)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::InitializeColliders </td> <td>(</td> <td class="paramtype"><a class="el" href="structiMeshWrapper.html">iMeshWrapper</a> * </td> <td class="paramname"> <em>mesh</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>legs</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>body</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>shift</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Initialize the colliders. <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</em> </td><td>is the mesh. </td></tr> <tr><td valign="top"></td><td valign="top"><em>legs</em> </td><td>is the size of the leg collider. </td></tr> <tr><td valign="top"></td><td valign="top"><em>body</em> </td><td>is the size of the body collider. </td></tr> <tr><td valign="top"></td><td valign="top"><em>shift</em> </td><td>is a shift added to the colliders. Normally the origin is assumed to be at the bottom of the model. With this shift you can adjust that. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="134ff5231004996e7bb4144391937592"></a><!-- doxytag: member="csColliderActor::IsOnGround" ref="134ff5231004996e7bb4144391937592" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool csColliderActor::IsOnGround </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Check if we are on the ground. <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00522">522</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="7a3ab6293bdab2a0fb33928e0238d763"></a><!-- doxytag: member="csColliderActor::Move" ref="7a3ab6293bdab2a0fb33928e0238d763" args="(float delta, float speed, const csVector3 &velBody, const csVector3 &angularVelocity)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool csColliderActor::Move </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>delta</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>speed</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>velBody</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>angularVelocity</em></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Move the model. <p> If EnableHitMeshes(true) is set then you can use <a class="el" href="classcsColliderActor.html#26361be9d07bce4ba44f768d7e1f4984" title="Return the meshes that we hit in the last call to Move().">GetHitMeshes()</a> after this to detect the meshes that were hit. <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>delta</em> </td><td>is the number of seconds (floating point) elapsed time. Typically this is the elapsed time from the virtual clock divided by 1000.0f. </td></tr> <tr><td valign="top"></td><td valign="top"><em>speed</em> </td><td>is the desired movement speed. This can be 1.0f for default speed. </td></tr> <tr><td valign="top"></td><td valign="top"><em>velBody</em> </td><td>is the relative movement vector in object space of the model (i.e. 0,0,1 will move the model forward). </td></tr> <tr><td valign="top"></td><td valign="top"><em>angularVelocity</em> </td><td>is the velocity of rotation. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="68b596150ae08abc70f8b232362f7af7"></a><!-- doxytag: member="csColliderActor::SetCamera" ref="68b596150ae08abc70f8b232362f7af7" args="(iCamera *camera, bool adjustRotation=true)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::SetCamera </td> <td>(</td> <td class="paramtype"><a class="el" href="structiCamera.html">iCamera</a> * </td> <td class="paramname"> <em>camera</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">bool </td> <td class="paramname"> <em>adjustRotation</em> = <code>true</code></td><td> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td><td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Change the current camera. <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>camera</em> </td><td>New current camera </td></tr> <tr><td valign="top"></td><td valign="top"><em>adjustRotation</em> </td><td>Whether to retrieve the current rotation from the camera. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="e9356b7d49bb8c30178d06d390a24cee"></a><!-- doxytag: member="csColliderActor::SetCD" ref="e9356b7d49bb8c30178d06d390a24cee" args="(bool c)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::SetCD </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>c</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Enable/disable collision detection (default enabled). <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00537">537</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="7550ff53e6cc721df1076c4938ad0257"></a><!-- doxytag: member="csColliderActor::SetCollideSystem" ref="7550ff53e6cc721df1076c4938ad0257" args="(iCollideSystem *cdsys)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::SetCollideSystem </td> <td>(</td> <td class="paramtype"><a class="el" href="structiCollideSystem.html">iCollideSystem</a> * </td> <td class="paramname"> <em>cdsys</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the collision detection system. <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00460">460</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="7d8f778de41aaf572eb53efce2c8c019"></a><!-- doxytag: member="csColliderActor::SetEngine" ref="7d8f778de41aaf572eb53efce2c8c019" args="(iEngine *engine)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::SetEngine </td> <td>(</td> <td class="paramtype"><a class="el" href="structiEngine.html">iEngine</a> * </td> <td class="paramname"> <em>engine</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the engine. <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00466">466</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="b0e4be4a3d12a5d4260490d03345e346"></a><!-- doxytag: member="csColliderActor::SetGravity" ref="b0e4be4a3d12a5d4260490d03345e346" args="(float g)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::SetGravity </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>g</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set gravity. <p> Terran default is 9.806. <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00508">508</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="bb3923fe8709fdd02704e57a81b3d899"></a><!-- doxytag: member="csColliderActor::SetOnGround" ref="bb3923fe8709fdd02704e57a81b3d899" args="(bool og)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::SetOnGround </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>og</em> </td> <td> ) </td> <td width="100%"><code> [inline]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the onground status. <p> <p>Definition at line <a class="el" href="cstool_2collider_8h-source.html#l00527">527</a> of file <a class="el" href="cstool_2collider_8h-source.html">collider.h</a>.</p> </div> </div><p> <a class="anchor" name="d1cd1dc799c496d3f084310457a2f53f"></a><!-- doxytag: member="csColliderActor::SetRotation" ref="d1cd1dc799c496d3f084310457a2f53f" args="(const csVector3 &rot)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csColliderActor::SetRotation </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>rot</em> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Set current rotation. <p> This is only used if a camera is used. </div> </div><p> <hr>The documentation for this class was generated from the following file:<ul> <li>cstool/<a class="el" href="cstool_2collider_8h-source.html">collider.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>