Drag[en]gine Game Engine  1.21
deBasePhysicsWorld Class Reference

Physics Module World Peer. More...

#include <deBasePhysicsWorld.h>

Public Member Functions

Constructors and Destructors
 deBasePhysicsWorld ()
 Create new peer. More...
 
virtual ~deBasePhysicsWorld ()
 Clean up peer. More...
 
Management
virtual void Update (float elapsed)
 
virtual void ProcessPhysics (float elapsed)
 Process physics simulation using the physics module. More...
 
Notifications
virtual void SizeChanged ()
 Size changed. More...
 
virtual void PhysicsChanged ()
 Physics properties changed. More...
 
virtual void HeightTerrainChanged ()
 Height Terrain changed. More...
 
virtual void ComponentAdded (deComponent *component)
 Component has been added. More...
 
virtual void ComponentRemoved (deComponent *component)
 Component has been removed. More...
 
virtual void AllComponentsRemoved ()
 All components have been removed. More...
 
virtual void ColliderAdded (deCollider *collider)
 Collider has been added. More...
 
virtual void ColliderRemoved (deCollider *collider)
 Collider has been removed. More...
 
virtual void AllCollidersRemoved ()
 All colliders have been removed. More...
 
virtual void TouchSensorAdded (deTouchSensor *touchSensor)
 Touch sensor has been added. More...
 
virtual void TouchSensorRemoved (deTouchSensor *touchSensor)
 Touch sensor has been removed. More...
 
virtual void AllTouchSensorsRemoved ()
 All touch sensors have been removed. More...
 
virtual void PropFieldAdded (dePropField *propField)
 Prop field has been added. More...
 
virtual void PropFieldRemoved (dePropField *propField)
 Prop field has been removed. More...
 
virtual void AllPropFieldsRemoved ()
 All prop fields have been removed. More...
 
virtual void ForceFieldAdded (deForceField *forceField)
 Force field has been added. More...
 
virtual void ForceFieldRemoved (deForceField *forceField)
 Force field has been removed. More...
 
virtual void AllForceFieldsRemoved ()
 All force fields have been removed. More...
 
virtual void ParticleEmitterAdded (deParticleEmitterInstance *emitter)
 Prop field has been added. More...
 
virtual void ParticleEmitterRemoved (deParticleEmitterInstance *emitter)
 Prop field has been removed. More...
 
virtual void AllParticleEmittersRemoved ()
 All prop fields have been removed. More...
 
virtual void SmokeEmitterAdded (deSmokeEmitter *smokeEmitter)
 Prop field has been added. More...
 
virtual void SmokeEmitterRemoved (deSmokeEmitter *smokeEmitter)
 Prop field has been removed. More...
 
virtual void AllSmokeEmittersRemoved ()
 All prop fields have been removed. More...
 
Collision Detection
virtual void PointHits (const decDVector &point, deBaseScriptingCollider *listener, const decCollisionFilter &collisionFilter)
 Test a point for collision with colliders. More...
 
virtual void RayHits (const decDVector &rayOrigin, const decVector &rayDirection, deBaseScriptingCollider *listener, const decCollisionFilter &collisionFilter)
 Tests a ray for collision with the element in the world. More...
 
virtual void ColliderHits (deCollider *collider, deBaseScriptingCollider *listener)
 Tests the collider for collision with world elements. More...
 
virtual void ColliderMoveHits (deCollider *collider, const decVector &displacement, deBaseScriptingCollider *listener)
 Tests the moving collider for collision with world elements. More...
 
virtual void ColliderRotateHits (deCollider *collider, const decVector &rotation, deBaseScriptingCollider *listener)
 Tests the rotating collider for collision with world elements. More...
 
virtual void ColliderMoveRotateHits (deCollider *collider, const decVector &displacement, const decVector &rotation, deBaseScriptingCollider *listener)
 Tests the moving and rotating collider for collision with world elements. More...
 

Detailed Description

Physics Module World Peer.

Worlds are used by the physics module to provide collision detection and physical simulations against the contained scenes.

Constructor & Destructor Documentation

◆ deBasePhysicsWorld()

deBasePhysicsWorld::deBasePhysicsWorld ( )

Create new peer.

◆ ~deBasePhysicsWorld()

virtual deBasePhysicsWorld::~deBasePhysicsWorld ( )
virtual

Clean up peer.

Member Function Documentation

◆ AllCollidersRemoved()

virtual void deBasePhysicsWorld::AllCollidersRemoved ( )
virtual

All colliders have been removed.

◆ AllComponentsRemoved()

virtual void deBasePhysicsWorld::AllComponentsRemoved ( )
virtual

All components have been removed.

◆ AllForceFieldsRemoved()

virtual void deBasePhysicsWorld::AllForceFieldsRemoved ( )
virtual

All force fields have been removed.

◆ AllParticleEmittersRemoved()

virtual void deBasePhysicsWorld::AllParticleEmittersRemoved ( )
virtual

All prop fields have been removed.

◆ AllPropFieldsRemoved()

virtual void deBasePhysicsWorld::AllPropFieldsRemoved ( )
virtual

All prop fields have been removed.

◆ AllSmokeEmittersRemoved()

virtual void deBasePhysicsWorld::AllSmokeEmittersRemoved ( )
virtual

All prop fields have been removed.

◆ AllTouchSensorsRemoved()

virtual void deBasePhysicsWorld::AllTouchSensorsRemoved ( )
virtual

All touch sensors have been removed.

◆ ColliderAdded()

virtual void deBasePhysicsWorld::ColliderAdded ( deCollider collider)
virtual

Collider has been added.

◆ ColliderHits()

virtual void deBasePhysicsWorld::ColliderHits ( deCollider collider,
deBaseScriptingCollider listener 
)
virtual

Tests the collider for collision with world elements.

For each collision the collisionResponse function of the listener is called. To stop testing set StopTesting in the provided collision information object to true.

◆ ColliderMoveHits()

virtual void deBasePhysicsWorld::ColliderMoveHits ( deCollider collider,
const decVector displacement,
deBaseScriptingCollider listener 
)
virtual

Tests the moving collider for collision with world elements.

For each collision starting with the earliest the collisionResponse function of the listener is called. To stop testing set StopTesting in the provided collision information object to true.

◆ ColliderMoveRotateHits()

virtual void deBasePhysicsWorld::ColliderMoveRotateHits ( deCollider collider,
const decVector displacement,
const decVector rotation,
deBaseScriptingCollider listener 
)
virtual

Tests the moving and rotating collider for collision with world elements.

For each collision starting with the earliest the collisionResponse function of the listener is called. To stop testing set StopTesting in the provided collision information object to true.

◆ ColliderRemoved()

virtual void deBasePhysicsWorld::ColliderRemoved ( deCollider collider)
virtual

Collider has been removed.

◆ ColliderRotateHits()

virtual void deBasePhysicsWorld::ColliderRotateHits ( deCollider collider,
const decVector rotation,
deBaseScriptingCollider listener 
)
virtual

Tests the rotating collider for collision with world elements.

For each collision starting with the earliest the collisionResponse function of the listener is called. To stop testing set StopTesting in the provided collision information object to true.

◆ ComponentAdded()

virtual void deBasePhysicsWorld::ComponentAdded ( deComponent component)
virtual

Component has been added.

◆ ComponentRemoved()

virtual void deBasePhysicsWorld::ComponentRemoved ( deComponent component)
virtual

Component has been removed.

◆ ForceFieldAdded()

virtual void deBasePhysicsWorld::ForceFieldAdded ( deForceField forceField)
virtual

Force field has been added.

◆ ForceFieldRemoved()

virtual void deBasePhysicsWorld::ForceFieldRemoved ( deForceField forceField)
virtual

Force field has been removed.

◆ HeightTerrainChanged()

virtual void deBasePhysicsWorld::HeightTerrainChanged ( )
virtual

Height Terrain changed.

◆ ParticleEmitterAdded()

virtual void deBasePhysicsWorld::ParticleEmitterAdded ( deParticleEmitterInstance emitter)
virtual

Prop field has been added.

◆ ParticleEmitterRemoved()

virtual void deBasePhysicsWorld::ParticleEmitterRemoved ( deParticleEmitterInstance emitter)
virtual

Prop field has been removed.

◆ PhysicsChanged()

virtual void deBasePhysicsWorld::PhysicsChanged ( )
virtual

Physics properties changed.

◆ PointHits()

virtual void deBasePhysicsWorld::PointHits ( const decDVector point,
deBaseScriptingCollider listener,
const decCollisionFilter collisionFilter 
)
virtual

Test a point for collision with colliders.

For each collision the collisionResponse function the given listener is called. To stop testing set StopTesting in the provided collision information object to true.

◆ ProcessPhysics()

virtual void deBasePhysicsWorld::ProcessPhysics ( float  elapsed)
virtual

Process physics simulation using the physics module.

Apply collision detection on moving kinematic collider, physical simulation on dynamic colliders, particle and prop field simulations as well as moving colliders attached to other colliders.

◆ PropFieldAdded()

virtual void deBasePhysicsWorld::PropFieldAdded ( dePropField propField)
virtual

Prop field has been added.

◆ PropFieldRemoved()

virtual void deBasePhysicsWorld::PropFieldRemoved ( dePropField propField)
virtual

Prop field has been removed.

◆ RayHits()

virtual void deBasePhysicsWorld::RayHits ( const decDVector rayOrigin,
const decVector rayDirection,
deBaseScriptingCollider listener,
const decCollisionFilter collisionFilter 
)
virtual

Tests a ray for collision with the element in the world.

For each collision the collisionResponse function the given listener is called. To stop testing set StopTesting in the provided collision information object to true.

◆ SizeChanged()

virtual void deBasePhysicsWorld::SizeChanged ( )
virtual

Size changed.

◆ SmokeEmitterAdded()

virtual void deBasePhysicsWorld::SmokeEmitterAdded ( deSmokeEmitter smokeEmitter)
virtual

Prop field has been added.

◆ SmokeEmitterRemoved()

virtual void deBasePhysicsWorld::SmokeEmitterRemoved ( deSmokeEmitter smokeEmitter)
virtual

Prop field has been removed.

◆ TouchSensorAdded()

virtual void deBasePhysicsWorld::TouchSensorAdded ( deTouchSensor touchSensor)
virtual

Touch sensor has been added.

◆ TouchSensorRemoved()

virtual void deBasePhysicsWorld::TouchSensorRemoved ( deTouchSensor touchSensor)
virtual

Touch sensor has been removed.

◆ Update()

virtual void deBasePhysicsWorld::Update ( float  elapsed)
virtual

Update dynamic parts of scene.

Parameters
elapsedSeconds elapsed since last update

The documentation for this class was generated from the following file: