#include <physics.h>
Inheritance diagram for PhysicsManager:
Public Types | |
enum | PHYSICSMANAGERDEFS { DEFAULTCOLLISIONPASSES = 5, DEFAULTCONTACTPASSES = 5 } |
Public Member Functions | |
PhysicsManager (Room *pkRoom, unsigned int uiCollisionPasses=DEFAULTCOLLISIONPASSES, unsigned int uiContactPasses=DEFAULTCONTACTPASSES) | |
virtual | ~PhysicsManager () |
void | SetGravity (const Vector3d &rkGravity) |
virtual void | Update (float fDeltaTime) |
virtual void | AddRigidBody (RigidBody *pkBody) |
virtual void | RemoveRigidBody (RigidBody *pkBody) |
const std::vector< RigidBody * > & | GetRigidBodies () |
bool | IsActive () const |
virtual void | Activate () |
virtual void | Deactivate () |
bool | Toggle () |
Protected Attributes | |
unsigned int | m_uiCollisionPasses |
unsigned int | m_uiContactPasses |
Room * | m_pkRoom |
Vector3d | m_kGravity |
std::vector< RigidBody * > | m_vpkBodies |
std::vector< ContactNode * > | m_vpkBodyNodes |
bool | m_bActive |
|
Defines and default values for physics manager |
|
|
|
|
|
Set gravity
|
|
Update the physics simulation
Reimplemented from UpdateEntity. |
|
Add a rigidbody to the physics simulation
|
|
Remove a rigidbody from the physics simulation
|
|
Get all rigidbodies managed by system
|
|
Query state of object
|
|
Activate object |
|
Deactivate object |
|
Toggle active state. This method does not need to be overloaded, it is only a wrapper to Activate and Deactivate
|
|
Number of collision passes |
|
Number of contact passes |
|
|
Gravity |
|
Managed rigidbodies |
|
Contact DAG nodes for each managed rigidbody |
|
Active flag |