Physics Module World Peer. More...
#include <deBasePhysicsWorld.h>
Public Member Functions | |
Constructors and Destructors | |
| deBasePhysicsWorld () | |
| Creates a new peer. | |
| virtual | ~deBasePhysicsWorld () |
| Cleans up the peer. | |
Management | |
| virtual void | Update (float elapsed) |
| Update dynamic parts of scene. | |
| virtual void | DetectCollisions (float elapsed) |
| Carry out collision detection on all colliders in the world. | |
Notifications | |
| virtual void | SizeChanged () |
| Size changed. | |
| virtual void | PhysicsChanged () |
| Physics properties changed. | |
| virtual void | HeightTerrainChanged () |
| Height Terrain changed. | |
| virtual void | ComponentAdded (int index, deComponent *component) |
| Component has been added. | |
| virtual void | ComponentRemoved (int index, deComponent *component) |
| Component has been removed. | |
| virtual void | AllComponentsRemoved () |
| All components have been removed. | |
| virtual void | ColliderAdded (int index, deCollider *collider) |
| Collider has been added. | |
| virtual void | ColliderRemoved (int index, deCollider *collider) |
| Collider has been removed. | |
| virtual void | AllCollidersRemoved () |
| All colliders have been removed. | |
| virtual void | TouchSensorAdded (int index, deTouchSensor *touchSensor) |
| Touch sensor has been added. | |
| virtual void | TouchSensorRemoved (int index, deTouchSensor *touchSensor) |
| Touch sensor has been removed. | |
| virtual void | AllTouchSensorsRemoved () |
| All touch sensors have been removed. | |
| virtual void | PropFieldAdded (int index, dePropField *propField) |
| Prop field has been added. | |
| virtual void | PropFieldRemoved (int index, dePropField *propField) |
| Prop field has been removed. | |
| virtual void | AllPropFieldsRemoved () |
| All prop fields have been removed. | |
| virtual void | ForceFieldAdded (int index, deForceField *forceField) |
| Force field has been added. | |
| virtual void | ForceFieldRemoved (int index, deForceField *forceField) |
| Force field has been removed. | |
| virtual void | AllForceFieldsRemoved () |
| All force fields have been removed. | |
| virtual void | ParticleEmitterAdded (deParticleEmitter *emitter) |
| Prop field has been added. | |
| virtual void | ParticleEmitterRemoved (deParticleEmitter *emitter) |
| Prop field has been removed. | |
| virtual void | AllParticleEmittersRemoved () |
| All prop fields have been removed. | |
| virtual void | SmokeEmitterAdded (int index, deSmokeEmitter *smokeEmitter) |
| Prop field has been added. | |
| virtual void | SmokeEmitterRemoved (int index, deSmokeEmitter *smokeEmitter) |
| Prop field has been removed. | |
| virtual void | AllSmokeEmittersRemoved () |
| All prop fields have been removed. | |
Collision Detection | |
| virtual void | RayHits (const decDVector &rayOrigin, const decVector &rayDirection, deBaseScriptingCollider *listener, decLayerMask &layerMask, int groupNumber) |
| Tests a ray for collision with scene elements. | |
| virtual void | ColliderHits (deCollider *collider, deBaseScriptingCollider *listener) |
| Tests the collider for collision with scene elements. | |
| virtual void | ColliderMoveHits (deCollider *collider, const decVector &displacement, deBaseScriptingCollider *listener) |
| Tests the moving collider for collision with scene elements. | |
Physics Module World Peer.
Worlds are used by the physics module to provide collision detection and physical simulations against the contained scenes.
| deBasePhysicsWorld::deBasePhysicsWorld | ( | ) |
Creates a new peer.
| virtual deBasePhysicsWorld::~deBasePhysicsWorld | ( | ) | [virtual] |
Cleans up the peer.
| virtual void deBasePhysicsWorld::AllCollidersRemoved | ( | ) | [virtual] |
All colliders have been removed.
| virtual void deBasePhysicsWorld::AllComponentsRemoved | ( | ) | [virtual] |
All components have been removed.
| virtual void deBasePhysicsWorld::AllForceFieldsRemoved | ( | ) | [virtual] |
All force fields have been removed.
| virtual void deBasePhysicsWorld::AllParticleEmittersRemoved | ( | ) | [virtual] |
All prop fields have been removed.
| virtual void deBasePhysicsWorld::AllPropFieldsRemoved | ( | ) | [virtual] |
All prop fields have been removed.
| virtual void deBasePhysicsWorld::AllSmokeEmittersRemoved | ( | ) | [virtual] |
All prop fields have been removed.
| virtual void deBasePhysicsWorld::AllTouchSensorsRemoved | ( | ) | [virtual] |
All touch sensors have been removed.
| virtual void deBasePhysicsWorld::ColliderAdded | ( | int | index, |
| deCollider * | collider | ||
| ) | [virtual] |
Collider has been added.
| virtual void deBasePhysicsWorld::ColliderHits | ( | deCollider * | collider, |
| deBaseScriptingCollider * | listener | ||
| ) | [virtual] |
Tests the collider for collision with scene elements.
For each collision the collisionResponse function of the listener assigned to the collider is called. To stop testing set StopTesting in the provided collision information object to true.
Has to be overwritten by the physics system to provide this test. The default implementation does nothing at all.
| virtual void deBasePhysicsWorld::ColliderMoveHits | ( | deCollider * | collider, |
| const decVector & | displacement, | ||
| deBaseScriptingCollider * | listener | ||
| ) | [virtual] |
Tests the moving collider for collision with scene elements.
For each collision starting with the earliest the collisionResponse function of the listener assigned to the collider is called. To stop testing set StopTesting in the provided collision information object to true.
Has to be overwritten by the physics system to provide this test. The default implementation does nothing at all.
| virtual void deBasePhysicsWorld::ColliderRemoved | ( | int | index, |
| deCollider * | collider | ||
| ) | [virtual] |
Collider has been removed.
| virtual void deBasePhysicsWorld::ComponentAdded | ( | int | index, |
| deComponent * | component | ||
| ) | [virtual] |
Component has been added.
| virtual void deBasePhysicsWorld::ComponentRemoved | ( | int | index, |
| deComponent * | component | ||
| ) | [virtual] |
Component has been removed.
| virtual void deBasePhysicsWorld::DetectCollisions | ( | float | elapsed ) | [virtual] |
Carry out collision detection on all colliders in the world.
The elapsed time is used to calculate travel distances as colliders store the velocity to travel and not the distance travelled.
| virtual void deBasePhysicsWorld::ForceFieldAdded | ( | int | index, |
| deForceField * | forceField | ||
| ) | [virtual] |
Force field has been added.
| virtual void deBasePhysicsWorld::ForceFieldRemoved | ( | int | index, |
| deForceField * | forceField | ||
| ) | [virtual] |
Force field has been removed.
| virtual void deBasePhysicsWorld::HeightTerrainChanged | ( | ) | [virtual] |
Height Terrain changed.
| virtual void deBasePhysicsWorld::ParticleEmitterAdded | ( | deParticleEmitter * | emitter ) | [virtual] |
Prop field has been added.
| virtual void deBasePhysicsWorld::ParticleEmitterRemoved | ( | deParticleEmitter * | emitter ) | [virtual] |
Prop field has been removed.
| virtual void deBasePhysicsWorld::PhysicsChanged | ( | ) | [virtual] |
Physics properties changed.
| virtual void deBasePhysicsWorld::PropFieldAdded | ( | int | index, |
| dePropField * | propField | ||
| ) | [virtual] |
Prop field has been added.
| virtual void deBasePhysicsWorld::PropFieldRemoved | ( | int | index, |
| dePropField * | propField | ||
| ) | [virtual] |
Prop field has been removed.
| virtual void deBasePhysicsWorld::RayHits | ( | const decDVector & | rayOrigin, |
| const decVector & | rayDirection, | ||
| deBaseScriptingCollider * | listener, | ||
| decLayerMask & | layerMask, | ||
| int | groupNumber | ||
| ) | [virtual] |
Tests a ray for collision with scene elements.
For each collision the collisionResponse function the given listener is called. To stop testing set StopTesting in the provided collision information object to true. The distance parameter in the collision response represents the actual distance to the ray origin along the ray direction.
Has to be overwritten by the physics system to provide this test. The default implementation does nothing at all.
| rayOrigin | Origin of the ray. |
| rayDirection | Normalized direction of the ray. |
| listener | Listener to ask about collisions. |
| layerMask | Layer mask to test for collisions with. |
| groupNumber | Group number to test for collision with or 0. |
| virtual void deBasePhysicsWorld::SizeChanged | ( | ) | [virtual] |
Size changed.
| virtual void deBasePhysicsWorld::SmokeEmitterAdded | ( | int | index, |
| deSmokeEmitter * | smokeEmitter | ||
| ) | [virtual] |
Prop field has been added.
| virtual void deBasePhysicsWorld::SmokeEmitterRemoved | ( | int | index, |
| deSmokeEmitter * | smokeEmitter | ||
| ) | [virtual] |
Prop field has been removed.
| virtual void deBasePhysicsWorld::TouchSensorAdded | ( | int | index, |
| deTouchSensor * | touchSensor | ||
| ) | [virtual] |
Touch sensor has been added.
| virtual void deBasePhysicsWorld::TouchSensorRemoved | ( | int | index, |
| deTouchSensor * | touchSensor | ||
| ) | [virtual] |
Touch sensor has been removed.
| virtual void deBasePhysicsWorld::Update | ( | float | elapsed ) | [virtual] |
Update dynamic parts of scene.
| elapsed | Seconds elapsed since last update |
1.7.2