| Bullet Collision Detection & Physics Library
    | 
btDiscreteDynamicsWorldMt – a version of DiscreteDynamicsWorld with some minor changes to support solving simulation islands on multiple threads. More...
#include <btDiscreteDynamicsWorldMt.h>


| Public Member Functions | |
| BT_DECLARE_ALIGNED_ALLOCATOR () | |
| btDiscreteDynamicsWorldMt (btDispatcher *dispatcher, btBroadphaseInterface *pairCache, btConstraintSolver *constraintSolver, btCollisionConfiguration *collisionConfiguration) | |
| virtual | ~btDiscreteDynamicsWorldMt () | 
|  Public Member Functions inherited from btDiscreteDynamicsWorld | |
| BT_DECLARE_ALIGNED_ALLOCATOR () | |
| btDiscreteDynamicsWorld (btDispatcher *dispatcher, btBroadphaseInterface *pairCache, btConstraintSolver *constraintSolver, btCollisionConfiguration *collisionConfiguration) | |
| this btDiscreteDynamicsWorld constructor gets created objects from the user, and will not delete those  More... | |
| virtual | ~btDiscreteDynamicsWorld () | 
| virtual int | stepSimulation (btScalar timeStep, int maxSubSteps=1, btScalar fixedTimeStep=btScalar(1.)/btScalar(60.)) | 
| if maxSubSteps > 0, it will interpolate motion between fixedTimeStep's  More... | |
| virtual void | synchronizeMotionStates () | 
| void | synchronizeSingleMotionState (btRigidBody *body) | 
| this can be useful to synchronize a single rigid body -> graphics object  More... | |
| virtual void | addConstraint (btTypedConstraint *constraint, bool disableCollisionsBetweenLinkedBodies=false) | 
| virtual void | removeConstraint (btTypedConstraint *constraint) | 
| virtual void | addAction (btActionInterface *) | 
| virtual void | removeAction (btActionInterface *) | 
| btSimulationIslandManager * | getSimulationIslandManager () | 
| const btSimulationIslandManager * | getSimulationIslandManager () const | 
| btCollisionWorld * | getCollisionWorld () | 
| virtual void | setGravity (const btVector3 &gravity) | 
| virtual btVector3 | getGravity () const | 
| virtual void | addCollisionObject (btCollisionObject *collisionObject, int collisionFilterGroup=btBroadphaseProxy::StaticFilter, int collisionFilterMask=btBroadphaseProxy::AllFilter ^ btBroadphaseProxy::StaticFilter) | 
| virtual void | addRigidBody (btRigidBody *body) | 
| virtual void | addRigidBody (btRigidBody *body, int group, int mask) | 
| virtual void | removeRigidBody (btRigidBody *body) | 
| virtual void | removeCollisionObject (btCollisionObject *collisionObject) | 
| removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btCollisionWorld::removeCollisionObject  More... | |
| virtual void | debugDrawConstraint (btTypedConstraint *constraint) | 
| virtual void | debugDrawWorld () | 
| virtual void | setConstraintSolver (btConstraintSolver *solver) | 
| virtual btConstraintSolver * | getConstraintSolver () | 
| virtual int | getNumConstraints () const | 
| virtual btTypedConstraint * | getConstraint (int index) | 
| virtual const btTypedConstraint * | getConstraint (int index) const | 
| virtual btDynamicsWorldType | getWorldType () const | 
| virtual void | clearForces () | 
| the forces on each rigidbody is accumulating together with gravity. clear this after each timestep.  More... | |
| virtual void | applyGravity () | 
| apply gravity, call this once per timestep  More... | |
| virtual void | setNumTasks (int numTasks) | 
| virtual void | updateVehicles (btScalar timeStep) | 
| obsolete, use updateActions instead  More... | |
| virtual void | addVehicle (btActionInterface *vehicle) | 
| obsolete, use addAction instead  More... | |
| virtual void | removeVehicle (btActionInterface *vehicle) | 
| obsolete, use removeAction instead  More... | |
| virtual void | addCharacter (btActionInterface *character) | 
| obsolete, use addAction instead  More... | |
| virtual void | removeCharacter (btActionInterface *character) | 
| obsolete, use removeAction instead  More... | |
| void | setSynchronizeAllMotionStates (bool synchronizeAll) | 
| bool | getSynchronizeAllMotionStates () const | 
| void | setApplySpeculativeContactRestitution (bool enable) | 
| bool | getApplySpeculativeContactRestitution () const | 
| virtual void | serialize (btSerializer *serializer) | 
| Preliminary serialization test for Bullet 2.76. Loading those files requires a separate parser (see Bullet/Demos/SerializeDemo)  More... | |
| void | setLatencyMotionStateInterpolation (bool latencyInterpolation) | 
| Interpolate motion state between previous and current transform, instead of current and next transform.  More... | |
| bool | getLatencyMotionStateInterpolation () const | 
|  Public Member Functions inherited from btDynamicsWorld | |
| btDynamicsWorld (btDispatcher *dispatcher, btBroadphaseInterface *broadphase, btCollisionConfiguration *collisionConfiguration) | |
| virtual | ~btDynamicsWorld () | 
| void | setInternalTickCallback (btInternalTickCallback cb, void *worldUserInfo=0, bool isPreTick=false) | 
| Set the callback for when an internal tick (simulation substep) happens, optional user info.  More... | |
| void | setWorldUserInfo (void *worldUserInfo) | 
| void * | getWorldUserInfo () const | 
| btContactSolverInfo & | getSolverInfo () | 
|  Public Member Functions inherited from btCollisionWorld | |
| btCollisionWorld (btDispatcher *dispatcher, btBroadphaseInterface *broadphasePairCache, btCollisionConfiguration *collisionConfiguration) | |
| for debug drawing  More... | |
| virtual | ~btCollisionWorld () | 
| void | setBroadphase (btBroadphaseInterface *pairCache) | 
| const btBroadphaseInterface * | getBroadphase () const | 
| btBroadphaseInterface * | getBroadphase () | 
| btOverlappingPairCache * | getPairCache () | 
| btDispatcher * | getDispatcher () | 
| const btDispatcher * | getDispatcher () const | 
| void | updateSingleAabb (btCollisionObject *colObj) | 
| virtual void | updateAabbs () | 
| virtual void | computeOverlappingPairs () | 
| the computeOverlappingPairs is usually already called by performDiscreteCollisionDetection (or stepSimulation) it can be useful to use if you perform ray tests without collision detection/simulation  More... | |
| virtual void | setDebugDrawer (btIDebugDraw *debugDrawer) | 
| virtual btIDebugDraw * | getDebugDrawer () | 
| virtual void | debugDrawObject (const btTransform &worldTransform, const btCollisionShape *shape, const btVector3 &color) | 
| int | getNumCollisionObjects () const | 
| virtual void | rayTest (const btVector3 &rayFromWorld, const btVector3 &rayToWorld, RayResultCallback &resultCallback) const | 
| rayTest performs a raycast on all objects in the btCollisionWorld, and calls the resultCallback This allows for several queries: first hit, all hits, any hit, dependent on the value returned by the callback.  More... | |
| void | convexSweepTest (const btConvexShape *castShape, const btTransform &from, const btTransform &to, ConvexResultCallback &resultCallback, btScalar allowedCcdPenetration=btScalar(0.)) const | 
| convexTest performs a swept convex cast on all objects in the btCollisionWorld, and calls the resultCallback This allows for several queries: first hit, all hits, any hit, dependent on the value return by the callback.  More... | |
| void | contactTest (btCollisionObject *colObj, ContactResultCallback &resultCallback) | 
| contactTest performs a discrete collision test between colObj against all objects in the btCollisionWorld, and calls the resultCallback.  More... | |
| void | contactPairTest (btCollisionObject *colObjA, btCollisionObject *colObjB, ContactResultCallback &resultCallback) | 
| contactTest performs a discrete collision test between two collision objects and calls the resultCallback if overlap if detected.  More... | |
| btCollisionObjectArray & | getCollisionObjectArray () | 
| const btCollisionObjectArray & | getCollisionObjectArray () const | 
| virtual void | performDiscreteCollisionDetection () | 
| btDispatcherInfo & | getDispatchInfo () | 
| const btDispatcherInfo & | getDispatchInfo () const | 
| bool | getForceUpdateAllAabbs () const | 
| void | setForceUpdateAllAabbs (bool forceUpdateAllAabbs) | 
| Additional Inherited Members | |
|  Static Public Member Functions inherited from btCollisionWorld | |
| static void | rayTestSingle (const btTransform &rayFromTrans, const btTransform &rayToTrans, btCollisionObject *collisionObject, const btCollisionShape *collisionShape, const btTransform &colObjWorldTransform, RayResultCallback &resultCallback) | 
| rayTestSingle performs a raycast call and calls the resultCallback.  More... | |
| static void | rayTestSingleInternal (const btTransform &rayFromTrans, const btTransform &rayToTrans, const btCollisionObjectWrapper *collisionObjectWrap, RayResultCallback &resultCallback) | 
| static void | objectQuerySingle (const btConvexShape *castShape, const btTransform &rayFromTrans, const btTransform &rayToTrans, btCollisionObject *collisionObject, const btCollisionShape *collisionShape, const btTransform &colObjWorldTransform, ConvexResultCallback &resultCallback, btScalar allowedPenetration) | 
| objectQuerySingle performs a collision detection query and calls the resultCallback. It is used internally by rayTest.  More... | |
| static void | objectQuerySingleInternal (const btConvexShape *castShape, const btTransform &convexFromTrans, const btTransform &convexToTrans, const btCollisionObjectWrapper *colObjWrap, ConvexResultCallback &resultCallback, btScalar allowedPenetration) | 
btDiscreteDynamicsWorldMt – a version of DiscreteDynamicsWorld with some minor changes to support solving simulation islands on multiple threads.
Definition at line 28 of file btDiscreteDynamicsWorldMt.h.
| btDiscreteDynamicsWorldMt::btDiscreteDynamicsWorldMt | ( | btDispatcher * | dispatcher, | 
| btBroadphaseInterface * | pairCache, | ||
| btConstraintSolver * | constraintSolver, | ||
| btCollisionConfiguration * | collisionConfiguration | ||
| ) | 
Definition at line 112 of file btDiscreteDynamicsWorldMt.cpp.
| 
 | virtual | 
Definition at line 133 of file btDiscreteDynamicsWorldMt.cpp.
| btDiscreteDynamicsWorldMt::BT_DECLARE_ALIGNED_ALLOCATOR | ( | ) | 
| 
 | protectedvirtual | 
solve all the constraints for this island
Reimplemented from btDiscreteDynamicsWorld.
Definition at line 148 of file btDiscreteDynamicsWorldMt.cpp.
| 
 | protected | 
Definition at line 31 of file btDiscreteDynamicsWorldMt.h.
 1.8.12
 1.8.12