TalanSoft Toolkits  201707
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Groups Pages
List of all members
iDynamicsScene Struct Referenceabstract
Inheritance diagram for iDynamicsScene:
iCollideScene iUnknown

Detailed Description

Dynamics interface.

General

virtual void Simulate (tF32 afTimeStep, iCollideResponseTable *apRespTable)=0
 Simulates for afTimeStep secs. More...
 
virtual void SetWorldSize (const sVec3f &avSize)=0
 Set the size of the simulated world. {Property}. More...
 
virtual sVec3f GetWorldSize () const =0
 Get the size of the simulated world. {Property}. More...
 
virtual void SetGravity (tF32 afGravity)=0
 Set the global gravity force of the simulation. {Property}. More...
 
virtual tF32 GetGravity () const =0
 Get the global gravity force gravity of the simulation. {Property}. More...
 

Instantiation

virtual iDynamicsBodyCreateBody (iCollideShape *apShape, tDynamicsBodyFlags aFlags)=0
 Creates a new body. More...
 
virtual iDynamicsMaterialCreateMaterial (iHString *ahspName)=0
 Creates a new material. More...
 
virtual iDynamicsMaterialGetMaterialFromName (iHString *ahspName) const =0
 Get a created material from it's name. {Property}. More...
 

Joint Creation

virtual iDynamicsJointCreateJointEx (iDataTable *apParams)=0
 Create a generic joint. More...
 
virtual iDynamicsJointCreateJointSlider (sVec3f avPivot, sVec3f avAxis, iDynamicsBody *apParentBody, iDynamicsBody *apChildBody, tBool abCollide)=0
 Create a slider joint. More...
 
virtual iDynamicsJointCreateJointHinge (sVec3f avAnchor, sVec3f avAxis, iDynamicsBody *apParentBody, iDynamicsBody *apChildBody, tBool abCollide)=0
 Create a hinge joint. More...
 
virtual iDynamicsJointCreateJointBall (sVec3f avAnchor, iDynamicsBody *apParentBody, iDynamicsBody *apChildBody, tBool abCollide)=0
 Create a ball and socket joint. More...
 

Vehicle Creation

virtual iDynamicsVehicleCreateVehicle (iDataTable *apDT)=0
 Create a vehicle from the specified description. More...
 

Additional Inherited Members

- Public Member Functions inherited from iCollideScene
virtual iCollideGetCollide () const =0
 Get the parent collide object. {Property}. More...
 
virtual iCollideObjectCreateObject (iCollideShape *apShape)=0
 Creates a new object in the scene. More...
 
virtual tU32 GetNumObjects () const =0
 Get the number of objects in the scene. {Property}. More...
 
virtual iCollideObjectGetObject (tU32 anIndex) const =0
 Get the object at the specified index. {Property}. More...
 
virtual void SetDebugDrawFlags (tPhysicsDebugDrawFlags aFlags)=0
 Set the collide scene's debug draw flags. {Property}. More...
 
virtual tPhysicsDebugDrawFlags GetDebugDrawFlags () const =0
 Get the collide scene's debug draw flags. {Property}. More...
 
virtual tBool DebugDraw (iCanvas *apCanvas)=0
 Draw debugging informations. More...
 
virtual void UpdateBroadphase ()=0
 Update the scene's broadphase. More...
 
- Public Member Functions inherited from iUnknown
virtual tBool IsOK () const =0
 Check if the object is valid. More...
 
virtual tI32 AddRef ()=0
 Signal that one more reference of the object has been created. More...
 
virtual tI32 Release ()=0
 Release a reference of the object. More...
 
virtual void DeleteThis ()=0
 Bypass any reference counting and delete this object. More...
 
virtual void Invalidate ()=0
 Invalidate the object. More...
 
virtual iUnknownQueryInterface (const tUUID &aIID)=0
 Query an interface. More...
 
virtual void ListInterfaces (iMutableCollection *apLst, tU32 anFlags) const =0
 Fill a UUID list containing the UUIDs of the implemented interfaces. More...
 
virtual tI32 SetNumRefs (tI32 anNumRefs)=0
 Set the reference counter directly. More...
 
virtual tI32 GetNumRefs () const =0
 Get the number of references to this object. More...
 

Member Function Documentation

virtual void Simulate ( tF32  afTimeStep,
iCollideResponseTable apRespTable 
)
pure virtual

Simulates for afTimeStep secs.

Remarks
The time step is used as is, for more predictable & reproducible simulations you should use a fixed time step.
virtual void SetWorldSize ( const sVec3f avSize)
pure virtual

Set the size of the simulated world. {Property}.

virtual sVec3f GetWorldSize ( ) const
pure virtual

Get the size of the simulated world. {Property}.

virtual void SetGravity ( tF32  afGravity)
pure virtual

Set the global gravity force of the simulation. {Property}.

virtual tF32 GetGravity ( ) const
pure virtual

Get the global gravity force gravity of the simulation. {Property}.

virtual iDynamicsBody* CreateBody ( iCollideShape apShape,
tDynamicsBodyFlags  aFlags 
)
pure virtual

Creates a new body.

virtual iDynamicsMaterial* CreateMaterial ( iHString ahspName)
pure virtual

Creates a new material.

virtual iDynamicsMaterial* GetMaterialFromName ( iHString ahspName) const
pure virtual

Get a created material from it's name. {Property}.

virtual iDynamicsJoint* CreateJointEx ( iDataTable apParams)
pure virtual

Create a generic joint.

virtual iDynamicsJoint* CreateJointSlider ( sVec3f  avPivot,
sVec3f  avAxis,
iDynamicsBody apParentBody,
iDynamicsBody apChildBody,
tBool  abCollide 
)
pure virtual

Create a slider joint.

virtual iDynamicsJoint* CreateJointHinge ( sVec3f  avAnchor,
sVec3f  avAxis,
iDynamicsBody apParentBody,
iDynamicsBody apChildBody,
tBool  abCollide 
)
pure virtual

Create a hinge joint.

virtual iDynamicsJoint* CreateJointBall ( sVec3f  avAnchor,
iDynamicsBody apParentBody,
iDynamicsBody apChildBody,
tBool  abCollide 
)
pure virtual

Create a ball and socket joint.

virtual iDynamicsVehicle* CreateVehicle ( iDataTable apDT)
pure virtual

Create a vehicle from the specified description.