<!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: iDynamicSystem 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 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>iDynamicSystem Struct Reference</h1><!-- doxytag: class="iDynamicSystem" --><!-- doxytag: inherits="iBase" -->This is the interface for the dynamics core. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="dynamics_8h-source.html">ivaria/dynamics.h</a>></code> <p> <div class="dynheader"> Inheritance diagram for iDynamicSystem:</div> <div class="dynsection"> <p><center><img src="structiDynamicSystem__inherit__graph.png" border="0" usemap="#iDynamicSystem__inherit__map" alt="Inheritance graph"></center> <map name="iDynamicSystem__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="43,7,99,33"></map> <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div> <p> <a href="structiDynamicSystem-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 void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#bd16f41cc92cba534dde08c84cd2275d">AttachCollider</a> (<a class="el" href="structiDynamicsSystemCollider.html">iDynamicsSystemCollider</a> *collider)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Attach collider to dynamic system. <a href="#bd16f41cc92cba534dde08c84cd2275d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#3d08b869bc7bb1c538d1c7708c38ce43">AttachColliderBox</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &size, const <a class="el" href="classcsOrthoTransform.html">csOrthoTransform</a> &trans, float friction, float elasticity, float softness=0.01f)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Attaches a static collider box to world. <a href="#3d08b869bc7bb1c538d1c7708c38ce43"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#22c05542e9f0869b31d60371f87f092a">AttachColliderCylinder</a> (float length, float radius, const <a class="el" href="classcsOrthoTransform.html">csOrthoTransform</a> &trans, float friction, float elasticity, float softness=0.01f)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Attaches a static collider cylinder to world (oriented along it's Z axis). <a href="#22c05542e9f0869b31d60371f87f092a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#9e4cb1cad040deacaf02df97ec55c939">AttachColliderMesh</a> (<a class="el" href="structiMeshWrapper.html">iMeshWrapper</a> *mesh, const <a class="el" href="classcsOrthoTransform.html">csOrthoTransform</a> &trans, float friction, float elasticity, float softness=0.01f)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Attaches a static collider mesh to world. <a href="#9e4cb1cad040deacaf02df97ec55c939"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#e9eddc879b08eed823d378477d1e5f6d">AttachColliderPlane</a> (const <a class="el" href="classcsPlane3.html">csPlane3</a> &plane, float friction, float elasticity, float softness=0.01f)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Attaches a static collider plane to world. <a href="#e9eddc879b08eed823d378477d1e5f6d"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#c6af95c792b5d751b056537347deb0eb">AttachColliderSphere</a> (float radius, const <a class="el" href="classcsVector3.html">csVector3</a> &offset, float friction, float elasticity, float softness=0.01f)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Attaches a static collider sphere to world. <a href="#c6af95c792b5d751b056537347deb0eb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsPtr.html">csPtr</a><br> < <a class="el" href="structiRigidBody.html">iRigidBody</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#291a3b0f3f65d25d290bc6511291d60a">CreateBody</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a rigid body and add it to the simulation. <a href="#291a3b0f3f65d25d290bc6511291d60a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsRef.html">csRef</a><br> < <a class="el" href="structiDynamicsSystemCollider.html">iDynamicsSystemCollider</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#f14bd22e1450bdb97c1e37deee233052">CreateCollider</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create static collider and put it into simulation. <a href="#f14bd22e1450bdb97c1e37deee233052"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsPtr.html">csPtr</a><br> < <a class="el" href="structiBodyGroup.html">iBodyGroup</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#2e3319edfec1797abc82a3112ca71998">CreateGroup</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a body group. Bodies in a group don't collide with each other. <a href="#2e3319edfec1797abc82a3112ca71998"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsPtr.html">csPtr</a>< <a class="el" href="structiJoint.html">iJoint</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#9f4156c2ab6332edcfffb5ac1f43edfb">CreateJoint</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a joint and add it to the simulation. <a href="#9f4156c2ab6332edcfffb5ac1f43edfb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#96e0c5dc2e70c631ee2582876c973a01">DestroyCollider</a> (<a class="el" href="structiDynamicsSystemCollider.html">iDynamicsSystemCollider</a> *collider)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destroy static collider. <a href="#96e0c5dc2e70c631ee2582876c973a01"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#3f5ea0a9b0986b31f6e2fe9e94be502e">DestroyColliders</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Destroy all static colliders. <a href="#3f5ea0a9b0986b31f6e2fe9e94be502e"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#9f48d7826e2f78f59f156e4e23d61907">EnableAutoDisable</a> (bool enable)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Turn on/off AutoDisable functionality. <a href="#9f48d7826e2f78f59f156e4e23d61907"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structiRigidBody.html">iRigidBody</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#a969e3f449c2429d4baf24e4ed44c1ad">FindBody</a> (const char *name)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Finds a body within a system. <a href="#a969e3f449c2429d4baf24e4ed44c1ad"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structiRigidBody.html">iRigidBody</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#c42c7efb36cda2f22178821215965127">GetBody</a> (unsigned int index)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get Rigid Body by its index. <a href="#c42c7efb36cda2f22178821215965127"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#845d585a34eae20913460776f1379155">GetBodysCount</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get rigid bodys count. <a href="#845d585a34eae20913460776f1379155"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="classcsRef.html">csRef</a><br> < <a class="el" href="structiDynamicsSystemCollider.html">iDynamicsSystemCollider</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#17c0960be4fe5c9fef6aaa081d190e89">GetCollider</a> (unsigned int index)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get static collider. <a href="#17c0960be4fe5c9fef6aaa081d190e89"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#b38ea552238219cd4b6056bc10a674bd">GetColliderCount</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get static colliders count. <a href="#b38ea552238219cd4b6056bc10a674bd"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <br> <a class="el" href="structiDynamicsMoveCallback.html">iDynamicsMoveCallback</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#1b876631a683ee7a24dcef382aabdbb6">GetDefaultMoveCallback</a> ()=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the default move callback. <a href="#1b876631a683ee7a24dcef382aabdbb6"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const <a class="el" href="classcsVector3.html">csVector3</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#3dabe0b6ddfb9a64a670d65346943199">GetGravity</a> () const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the global gravity. <a href="#3dabe0b6ddfb9a64a670d65346943199"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual float </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#0609aa3cde5196df7d58e3cba3854eac">GetLinearDampener</a> () const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the global linear dampener setting. <a href="#0609aa3cde5196df7d58e3cba3854eac"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual float </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#35056b9679654f5be94b0d346822f957">GetRollingDampener</a> () const =0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the global rolling dampener setting. <a href="#35056b9679654f5be94b0d346822f957"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="structiObject.html">iObject</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#2acb7d6f87fcd7d33fbb5a5579fab047">QueryObject</a> (void)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">returns the underlying object <a href="#2acb7d6f87fcd7d33fbb5a5579fab047"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#0c3df60197d406c1ea31577547b67657">RemoveBody</a> (<a class="el" href="structiRigidBody.html">iRigidBody</a> *body)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Create a rigid body and add it to the simulation. <a href="#0c3df60197d406c1ea31577547b67657"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#727a7f6ce023f21f7b71de4a7d072dd2">RemoveGroup</a> (<a class="el" href="structiBodyGroup.html">iBodyGroup</a> *group)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove a group from a simulation. Those bodies now collide. <a href="#727a7f6ce023f21f7b71de4a7d072dd2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#3681fcca08aaf2d214fc374fef035300">RemoveJoint</a> (<a class="el" href="structiJoint.html">iJoint</a> *joint)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Remove a joint from the simulation. <a href="#3681fcca08aaf2d214fc374fef035300"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#9da628db607de6c8424e3f20847f001f">SetAutoDisableParams</a> (float linear, float angular, int steps, float time)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the parameters for AutoDisable. <a href="#9da628db607de6c8424e3f20847f001f"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#984ef4b916592ea9a4d4228334008bfb">SetGravity</a> (const <a class="el" href="classcsVector3.html">csVector3</a> &v)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the global gravity. <a href="#984ef4b916592ea9a4d4228334008bfb"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#04d0000cf75b84fe6352e57386b82d78">SetLinearDampener</a> (float d)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the global linear dampener. <a href="#04d0000cf75b84fe6352e57386b82d78"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#043c42e0a314dfe25c79151861923636">SetRollingDampener</a> (float d)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set the global rolling dampener. <a href="#043c42e0a314dfe25c79151861923636"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="structiDynamicSystem.html#5ed29beeb38862085f77b0eecc83f86c">Step</a> (float stepsize)=0</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Step the simulation forward by stepsize. <a href="#5ed29beeb38862085f77b0eecc83f86c"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> This is the interface for the dynamics core. <p> It handles all bookkeeping for rigid bodies and joints. It also handles collision response. Collision detection is done in another plugin.<p> Main creators of instances implementing this interface:<ul> <li>iDynamicSystem::CreateSystem()</li></ul> <p> Main ways to get pointers to this interface:<ul> <li>iDynamicSystem::FindSystem() </li></ul> <p>Definition at line <a class="el" href="dynamics_8h-source.html#l00114">114</a> of file <a class="el" href="dynamics_8h-source.html">dynamics.h</a>.</p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="bd16f41cc92cba534dde08c84cd2275d"></a><!-- doxytag: member="iDynamicSystem::AttachCollider" ref="bd16f41cc92cba534dde08c84cd2275d" args="(iDynamicsSystemCollider *collider)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::AttachCollider </td> <td>(</td> <td class="paramtype"><a class="el" href="structiDynamicsSystemCollider.html">iDynamicsSystemCollider</a> * </td> <td class="paramname"> <em>collider</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Attach collider to dynamic system. <p> </div> </div><p> <a class="anchor" name="3d08b869bc7bb1c538d1c7708c38ce43"></a><!-- doxytag: member="iDynamicSystem::AttachColliderBox" ref="3d08b869bc7bb1c538d1c7708c38ce43" args="(const csVector3 &size, const csOrthoTransform &trans, float friction, float elasticity, float softness=0.01f)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool iDynamicSystem::AttachColliderBox </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>size</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsOrthoTransform.html">csOrthoTransform</a> & </td> <td class="paramname"> <em>trans</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>friction</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>elasticity</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>softness</em> = <code>0.01f</code></td><td> </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> Attaches a static collider box to world. <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>size</em> </td><td>the box size along each axis </td></tr> <tr><td valign="top"></td><td valign="top"><em>trans</em> </td><td>a hard transform to apply to the mesh </td></tr> <tr><td valign="top"></td><td valign="top"><em>friction</em> </td><td>how much friction this body has, ranges from 0 (no friction) to infinity (perfect friction) </td></tr> <tr><td valign="top"></td><td valign="top"><em>elasticity</em> </td><td>the "bouncyness" of this object, from 0 (no bounce) to 1 (maximum bouncyness) </td></tr> <tr><td valign="top"></td><td valign="top"><em>softness</em> </td><td>how "squishy" this object is, in the range 0...1; small values (range of 0.00001 to 0.01) give reasonably stiff collision contacts, larger values are more "mushy" </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="22c05542e9f0869b31d60371f87f092a"></a><!-- doxytag: member="iDynamicSystem::AttachColliderCylinder" ref="22c05542e9f0869b31d60371f87f092a" args="(float length, float radius, const csOrthoTransform &trans, float friction, float elasticity, float softness=0.01f)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool iDynamicSystem::AttachColliderCylinder </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>length</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>radius</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsOrthoTransform.html">csOrthoTransform</a> & </td> <td class="paramname"> <em>trans</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>friction</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>elasticity</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>softness</em> = <code>0.01f</code></td><td> </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> Attaches a static collider cylinder to world (oriented along it's Z axis). <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>length</em> </td><td>the cylinder length along the axis </td></tr> <tr><td valign="top"></td><td valign="top"><em>radius</em> </td><td>the cylinder radius </td></tr> <tr><td valign="top"></td><td valign="top"><em>trans</em> </td><td>a hard transform to apply to the mesh </td></tr> <tr><td valign="top"></td><td valign="top"><em>friction</em> </td><td>how much friction this body has, ranges from 0 (no friction) to infinity (perfect friction) </td></tr> <tr><td valign="top"></td><td valign="top"><em>elasticity</em> </td><td>the "bouncyness" of this object, from 0 (no bounce) to 1 (maximum bouncyness) </td></tr> <tr><td valign="top"></td><td valign="top"><em>softness</em> </td><td>how "squishy" this object is, in the range 0...1; small values (range of 0.00001 to 0.01) give reasonably stiff collision contacts, larger values are more "mushy" </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="9e4cb1cad040deacaf02df97ec55c939"></a><!-- doxytag: member="iDynamicSystem::AttachColliderMesh" ref="9e4cb1cad040deacaf02df97ec55c939" args="(iMeshWrapper *mesh, const csOrthoTransform &trans, float friction, float elasticity, float softness=0.01f)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool iDynamicSystem::AttachColliderMesh </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="classcsOrthoTransform.html">csOrthoTransform</a> & </td> <td class="paramname"> <em>trans</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>friction</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>elasticity</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>softness</em> = <code>0.01f</code></td><td> </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> Attaches a static collider mesh to world. <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>the mesh to use for collision detection </td></tr> <tr><td valign="top"></td><td valign="top"><em>trans</em> </td><td>a hard transform to apply to the mesh </td></tr> <tr><td valign="top"></td><td valign="top"><em>friction</em> </td><td>how much friction this body has, ranges from 0 (no friction) to infinity (perfect friction) </td></tr> <tr><td valign="top"></td><td valign="top"><em>elasticity</em> </td><td>the "bouncyness" of this object, from 0 (no bounce) to 1 (maximum bouncyness) </td></tr> <tr><td valign="top"></td><td valign="top"><em>softness</em> </td><td>how "squishy" this object is, in the range 0...1; small values (range of 0.00001 to 0.01) give reasonably stiff collision contacts, larger values are more "mushy" </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="e9eddc879b08eed823d378477d1e5f6d"></a><!-- doxytag: member="iDynamicSystem::AttachColliderPlane" ref="e9eddc879b08eed823d378477d1e5f6d" args="(const csPlane3 &plane, float friction, float elasticity, float softness=0.01f)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool iDynamicSystem::AttachColliderPlane </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsPlane3.html">csPlane3</a> & </td> <td class="paramname"> <em>plane</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>friction</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>elasticity</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>softness</em> = <code>0.01f</code></td><td> </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> Attaches a static collider plane to world. <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>plane</em> </td><td>describes the plane to added </td></tr> <tr><td valign="top"></td><td valign="top"><em>friction</em> </td><td>how much friction this body has, ranges from 0 (no friction) to infinity (perfect friction) </td></tr> <tr><td valign="top"></td><td valign="top"><em>elasticity</em> </td><td>the "bouncyness" of this object, from 0 (no bounce) to 1 (maximum bouncyness) </td></tr> <tr><td valign="top"></td><td valign="top"><em>softness</em> </td><td>how "squishy" this object is, in the range 0...1; small values (range of 0.00001 to 0.01) give reasonably stiff collision contacts, larger values are more "mushy" </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="c6af95c792b5d751b056537347deb0eb"></a><!-- doxytag: member="iDynamicSystem::AttachColliderSphere" ref="c6af95c792b5d751b056537347deb0eb" args="(float radius, const csVector3 &offset, float friction, float elasticity, float softness=0.01f)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual bool iDynamicSystem::AttachColliderSphere </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>radius</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>offset</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>friction</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>elasticity</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>softness</em> = <code>0.01f</code></td><td> </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> Attaches a static collider sphere to world. <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>radius</em> </td><td>the radius of the sphere </td></tr> <tr><td valign="top"></td><td valign="top"><em>offset</em> </td><td>a translation of the sphere's center from the default (0,0,0) </td></tr> <tr><td valign="top"></td><td valign="top"><em>friction</em> </td><td>how much friction this body has, ranges from 0 (no friction) to infinity (perfect friction) </td></tr> <tr><td valign="top"></td><td valign="top"><em>elasticity</em> </td><td>the "bouncyness" of this object, from 0 (no bounce) to 1 (maximum bouncyness) </td></tr> <tr><td valign="top"></td><td valign="top"><em>softness</em> </td><td>how "squishy" this object is, in the range 0...1; small values (range of 0.00001 to 0.01) give reasonably stiff collision contacts, larger values are more "mushy" </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="291a3b0f3f65d25d290bc6511291d60a"></a><!-- doxytag: member="iDynamicSystem::CreateBody" ref="291a3b0f3f65d25d290bc6511291d60a" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classcsPtr.html">csPtr</a><<a class="el" href="structiRigidBody.html">iRigidBody</a>> iDynamicSystem::CreateBody </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create a rigid body and add it to the simulation. <p> </div> </div><p> <a class="anchor" name="f14bd22e1450bdb97c1e37deee233052"></a><!-- doxytag: member="iDynamicSystem::CreateCollider" ref="f14bd22e1450bdb97c1e37deee233052" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classcsRef.html">csRef</a><<a class="el" href="structiDynamicsSystemCollider.html">iDynamicsSystemCollider</a>> iDynamicSystem::CreateCollider </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create static collider and put it into simulation. <p> After collision it will remain in the same place, but it will affect collided dynamic colliders (to make it dynamic, just attach it to the rigid body). </div> </div><p> <a class="anchor" name="2e3319edfec1797abc82a3112ca71998"></a><!-- doxytag: member="iDynamicSystem::CreateGroup" ref="2e3319edfec1797abc82a3112ca71998" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classcsPtr.html">csPtr</a><<a class="el" href="structiBodyGroup.html">iBodyGroup</a>> iDynamicSystem::CreateGroup </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create a body group. Bodies in a group don't collide with each other. <p> </div> </div><p> <a class="anchor" name="9f4156c2ab6332edcfffb5ac1f43edfb"></a><!-- doxytag: member="iDynamicSystem::CreateJoint" ref="9f4156c2ab6332edcfffb5ac1f43edfb" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classcsPtr.html">csPtr</a><<a class="el" href="structiJoint.html">iJoint</a>> iDynamicSystem::CreateJoint </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create a joint and add it to the simulation. <p> </div> </div><p> <a class="anchor" name="96e0c5dc2e70c631ee2582876c973a01"></a><!-- doxytag: member="iDynamicSystem::DestroyCollider" ref="96e0c5dc2e70c631ee2582876c973a01" args="(iDynamicsSystemCollider *collider)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::DestroyCollider </td> <td>(</td> <td class="paramtype"><a class="el" href="structiDynamicsSystemCollider.html">iDynamicsSystemCollider</a> * </td> <td class="paramname"> <em>collider</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Destroy static collider. <p> </div> </div><p> <a class="anchor" name="3f5ea0a9b0986b31f6e2fe9e94be502e"></a><!-- doxytag: member="iDynamicSystem::DestroyColliders" ref="3f5ea0a9b0986b31f6e2fe9e94be502e" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::DestroyColliders </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Destroy all static colliders. <p> </div> </div><p> <a class="anchor" name="9f48d7826e2f78f59f156e4e23d61907"></a><!-- doxytag: member="iDynamicSystem::EnableAutoDisable" ref="9f48d7826e2f78f59f156e4e23d61907" args="(bool enable)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::EnableAutoDisable </td> <td>(</td> <td class="paramtype">bool </td> <td class="paramname"> <em>enable</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Turn on/off AutoDisable functionality. <p> AutoDisable will stop moving objects if they are stable in order to save processing time. By default this is enabled. </div> </div><p> <a class="anchor" name="a969e3f449c2429d4baf24e4ed44c1ad"></a><!-- doxytag: member="iDynamicSystem::FindBody" ref="a969e3f449c2429d4baf24e4ed44c1ad" args="(const char *name)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structiRigidBody.html">iRigidBody</a>* iDynamicSystem::FindBody </td> <td>(</td> <td class="paramtype">const char * </td> <td class="paramname"> <em>name</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Finds a body within a system. <p> </div> </div><p> <a class="anchor" name="c42c7efb36cda2f22178821215965127"></a><!-- doxytag: member="iDynamicSystem::GetBody" ref="c42c7efb36cda2f22178821215965127" args="(unsigned int index)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structiRigidBody.html">iRigidBody</a>* iDynamicSystem::GetBody </td> <td>(</td> <td class="paramtype">unsigned int </td> <td class="paramname"> <em>index</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get Rigid Body by its index. <p> </div> </div><p> <a class="anchor" name="845d585a34eae20913460776f1379155"></a><!-- doxytag: member="iDynamicSystem::GetBodysCount" ref="845d585a34eae20913460776f1379155" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual int iDynamicSystem::GetBodysCount </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get rigid bodys count. <p> </div> </div><p> <a class="anchor" name="17c0960be4fe5c9fef6aaa081d190e89"></a><!-- doxytag: member="iDynamicSystem::GetCollider" ref="17c0960be4fe5c9fef6aaa081d190e89" args="(unsigned int index)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="classcsRef.html">csRef</a><<a class="el" href="structiDynamicsSystemCollider.html">iDynamicsSystemCollider</a>> iDynamicSystem::GetCollider </td> <td>(</td> <td class="paramtype">unsigned int </td> <td class="paramname"> <em>index</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get static collider. <p> </div> </div><p> <a class="anchor" name="b38ea552238219cd4b6056bc10a674bd"></a><!-- doxytag: member="iDynamicSystem::GetColliderCount" ref="b38ea552238219cd4b6056bc10a674bd" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual int iDynamicSystem::GetColliderCount </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get static colliders count. <p> </div> </div><p> <a class="anchor" name="1b876631a683ee7a24dcef382aabdbb6"></a><!-- doxytag: member="iDynamicSystem::GetDefaultMoveCallback" ref="1b876631a683ee7a24dcef382aabdbb6" args="()=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structiDynamicsMoveCallback.html">iDynamicsMoveCallback</a>* iDynamicSystem::GetDefaultMoveCallback </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the default move callback. <p> </div> </div><p> <a class="anchor" name="3dabe0b6ddfb9a64a670d65346943199"></a><!-- doxytag: member="iDynamicSystem::GetGravity" ref="3dabe0b6ddfb9a64a670d65346943199" args="() const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual const <a class="el" href="classcsVector3.html">csVector3</a> iDynamicSystem::GetGravity </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the global gravity. <p> </div> </div><p> <a class="anchor" name="0609aa3cde5196df7d58e3cba3854eac"></a><!-- doxytag: member="iDynamicSystem::GetLinearDampener" ref="0609aa3cde5196df7d58e3cba3854eac" args="() const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual float iDynamicSystem::GetLinearDampener </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the global linear dampener setting. <p> </div> </div><p> <a class="anchor" name="35056b9679654f5be94b0d346822f957"></a><!-- doxytag: member="iDynamicSystem::GetRollingDampener" ref="35056b9679654f5be94b0d346822f957" args="() const =0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual float iDynamicSystem::GetRollingDampener </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const<code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Get the global rolling dampener setting. <p> </div> </div><p> <a class="anchor" name="2acb7d6f87fcd7d33fbb5a5579fab047"></a><!-- doxytag: member="iDynamicSystem::QueryObject" ref="2acb7d6f87fcd7d33fbb5a5579fab047" args="(void)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual <a class="el" href="structiObject.html">iObject</a>* iDynamicSystem::QueryObject </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> returns the underlying object <p> </div> </div><p> <a class="anchor" name="0c3df60197d406c1ea31577547b67657"></a><!-- doxytag: member="iDynamicSystem::RemoveBody" ref="0c3df60197d406c1ea31577547b67657" args="(iRigidBody *body)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::RemoveBody </td> <td>(</td> <td class="paramtype"><a class="el" href="structiRigidBody.html">iRigidBody</a> * </td> <td class="paramname"> <em>body</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Create a rigid body and add it to the simulation. <p> </div> </div><p> <a class="anchor" name="727a7f6ce023f21f7b71de4a7d072dd2"></a><!-- doxytag: member="iDynamicSystem::RemoveGroup" ref="727a7f6ce023f21f7b71de4a7d072dd2" args="(iBodyGroup *group)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::RemoveGroup </td> <td>(</td> <td class="paramtype"><a class="el" href="structiBodyGroup.html">iBodyGroup</a> * </td> <td class="paramname"> <em>group</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Remove a group from a simulation. Those bodies now collide. <p> </div> </div><p> <a class="anchor" name="3681fcca08aaf2d214fc374fef035300"></a><!-- doxytag: member="iDynamicSystem::RemoveJoint" ref="3681fcca08aaf2d214fc374fef035300" args="(iJoint *joint)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::RemoveJoint </td> <td>(</td> <td class="paramtype"><a class="el" href="structiJoint.html">iJoint</a> * </td> <td class="paramname"> <em>joint</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Remove a joint from the simulation. <p> </div> </div><p> <a class="anchor" name="9da628db607de6c8424e3f20847f001f"></a><!-- doxytag: member="iDynamicSystem::SetAutoDisableParams" ref="9da628db607de6c8424e3f20847f001f" args="(float linear, float angular, int steps, float time)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::SetAutoDisableParams </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>linear</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>angular</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"> <em>steps</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>time</em></td><td> </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> Set the parameters for AutoDisable. <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>linear</em> </td><td>Maximum linear movement to disable a body </td></tr> <tr><td valign="top"></td><td valign="top"><em>angular</em> </td><td>Maximum angular movement to disable a body </td></tr> <tr><td valign="top"></td><td valign="top"><em>steps</em> </td><td>Minimum number of steps the body meets linear and angular requirements before it is disabled. </td></tr> <tr><td valign="top"></td><td valign="top"><em>time</em> </td><td>Minimum time the body needs to meet linear and angular movement requirements before it is disabled. </td></tr> </table> </dl> </div> </div><p> <a class="anchor" name="984ef4b916592ea9a4d4228334008bfb"></a><!-- doxytag: member="iDynamicSystem::SetGravity" ref="984ef4b916592ea9a4d4228334008bfb" args="(const csVector3 &v)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::SetGravity </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> & </td> <td class="paramname"> <em>v</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the global gravity. <p> </div> </div><p> <a class="anchor" name="04d0000cf75b84fe6352e57386b82d78"></a><!-- doxytag: member="iDynamicSystem::SetLinearDampener" ref="04d0000cf75b84fe6352e57386b82d78" args="(float d)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::SetLinearDampener </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>d</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the global linear dampener. <p> </div> </div><p> <a class="anchor" name="043c42e0a314dfe25c79151861923636"></a><!-- doxytag: member="iDynamicSystem::SetRollingDampener" ref="043c42e0a314dfe25c79151861923636" args="(float d)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::SetRollingDampener </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>d</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Set the global rolling dampener. <p> </div> </div><p> <a class="anchor" name="5ed29beeb38862085f77b0eecc83f86c"></a><!-- doxytag: member="iDynamicSystem::Step" ref="5ed29beeb38862085f77b0eecc83f86c" args="(float stepsize)=0" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">virtual void iDynamicSystem::Step </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>stepsize</em> </td> <td> ) </td> <td width="100%"><code> [pure virtual]</code></td> </tr> </table> </div> <div class="memdoc"> <p> Step the simulation forward by stepsize. <p> </div> </div><p> <hr>The documentation for this struct was generated from the following file:<ul> <li>ivaria/<a class="el" href="dynamics_8h-source.html">dynamics.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>