Blender V2.61 - r43446
Public Member Functions

btContinuousDynamicsWorld Class Reference

#include <btContinuousDynamicsWorld.h>

Inheritance diagram for btContinuousDynamicsWorld:
Inheritance graph
[legend]

List of all members.

Public Member Functions

 btContinuousDynamicsWorld (btDispatcher *dispatcher, btBroadphaseInterface *pairCache, btConstraintSolver *constraintSolver, btCollisionConfiguration *collisionConfiguration)
virtual ~btContinuousDynamicsWorld ()
virtual void internalSingleStepSimulation (btScalar timeStep)
 time stepping with calculation of time of impact for selected fast moving objects
virtual void calculateTimeOfImpacts (btScalar timeStep)
virtual btDynamicsWorldType getWorldType () const

Detailed Description

btContinuousDynamicsWorld adds optional (per object) continuous collision detection for fast moving objects to the btDiscreteDynamicsWorld. This copes with fast moving objects that otherwise would tunnel/miss collisions. Under construction, don't use yet! Please use btDiscreteDynamicsWorld instead.

Definition at line 24 of file btContinuousDynamicsWorld.h.


Constructor & Destructor Documentation

btContinuousDynamicsWorld::btContinuousDynamicsWorld ( btDispatcher dispatcher,
btBroadphaseInterface pairCache,
btConstraintSolver constraintSolver,
btCollisionConfiguration collisionConfiguration 
)

Definition at line 36 of file btContinuousDynamicsWorld.cpp.

btContinuousDynamicsWorld::~btContinuousDynamicsWorld ( ) [virtual]

Definition at line 41 of file btContinuousDynamicsWorld.cpp.


Member Function Documentation

void btContinuousDynamicsWorld::calculateTimeOfImpacts ( btScalar  timeStep) [virtual]

these should be 'temporal' aabbs!

'toi' is the global smallest time of impact. However, we just calculate the time of impact for each object individually. so we handle the case moving versus static properly, and we cheat for moving versus moving

calculate time of impact for overlapping pairs

Definition at line 106 of file btContinuousDynamicsWorld.cpp.

References btDispatcherInfo::DISPATCH_CONTINUOUS, btDispatcherInfo::DISPATCH_DISCRETE, btDispatcher::dispatchAllCollisionPairs(), btCollisionWorld::getDispatcher(), btCollisionWorld::getDispatchInfo(), btBroadphaseInterface::getOverlappingPairCache(), btCollisionWorld::m_broadphasePairCache, btCollisionWorld::m_dispatcher1, btDispatcherInfo::m_dispatchFunc, btDispatcherInfo::m_stepCount, btDispatcherInfo::m_timeOfImpact, and btDispatcherInfo::m_timeStep.

Referenced by internalSingleStepSimulation().

virtual btDynamicsWorldType btContinuousDynamicsWorld::getWorldType ( ) const [inline, virtual]

Reimplemented from btDiscreteDynamicsWorld.

Definition at line 39 of file btContinuousDynamicsWorld.h.

References BT_CONTINUOUS_DYNAMICS_WORLD.

void btContinuousDynamicsWorld::internalSingleStepSimulation ( btScalar  timeStep) [virtual]

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