Bullet Collision Detection & Physics Library
|
btDiscreteDynamicsWorld provides discrete rigid body simulation those classes replace the obsolete CcdPhysicsEnvironment/CcdPhysicsController More...
#include <btDiscreteDynamicsWorld.h>
Protected Member Functions | |
virtual void | predictUnconstraintMotion (btScalar timeStep) |
void | integrateTransformsInternal (btRigidBody **bodies, int numBodies, btScalar timeStep) |
virtual void | integrateTransforms (btScalar timeStep) |
virtual void | calculateSimulationIslands () |
virtual void | updateActivationState (btScalar timeStep) |
void | updateActions (btScalar timeStep) |
void | startProfiling (btScalar timeStep) |
virtual void | internalSingleStepSimulation (btScalar timeStep) |
void | releasePredictiveContacts () |
void | createPredictiveContactsInternal (btRigidBody **bodies, int numBodies, btScalar timeStep) |
virtual void | createPredictiveContacts (btScalar timeStep) |
virtual void | saveKinematicState (btScalar timeStep) |
void | serializeRigidBodies (btSerializer *serializer) |
void | serializeDynamicsWorldInfo (btSerializer *serializer) |
![]() | |
void | serializeCollisionObjects (btSerializer *serializer) |
void | serializeContactManifolds (btSerializer *serializer) |
btDiscreteDynamicsWorld provides discrete rigid body simulation those classes replace the obsolete CcdPhysicsEnvironment/CcdPhysicsController
Definition at line 36 of file btDiscreteDynamicsWorld.h.
btDiscreteDynamicsWorld::btDiscreteDynamicsWorld | ( | btDispatcher * | dispatcher, |
btBroadphaseInterface * | pairCache, | ||
btConstraintSolver * | constraintSolver, | ||
btCollisionConfiguration * | collisionConfiguration | ||
) |
this btDiscreteDynamicsWorld constructor gets created objects from the user, and will not delete those
Definition at line 191 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Definition at line 229 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 651 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
obsolete, use addAction instead
Reimplemented from btDynamicsWorld.
Definition at line 671 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Reimplemented from btCollisionWorld.
Definition at line 517 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Reimplemented from btDynamicsWorld.
Definition at line 631 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 537 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 563 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
obsolete, use addAction instead
Reimplemented from btDynamicsWorld.
Definition at line 661 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
apply gravity, call this once per timestep
Reimplemented in btMultiBodyDynamicsWorld.
Definition at line 322 of file btDiscreteDynamicsWorld.cpp.
btDiscreteDynamicsWorld::BT_DECLARE_ALIGNED_ALLOCATOR | ( | ) |
|
protectedvirtual |
Reimplemented in btMultiBodyDynamicsWorld.
Definition at line 709 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
the forces on each rigidbody is accumulating together with gravity. clear this after each timestep.
Implements btDynamicsWorld.
Reimplemented in btMultiBodyDynamicsWorld.
Definition at line 309 of file btDiscreteDynamicsWorld.cpp.
Reimplemented in btDiscreteDynamicsWorldMt.
Definition at line 941 of file btDiscreteDynamicsWorld.cpp.
|
protected |
Definition at line 849 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
note: the code for D6_SPRING_2_CONSTRAINT_TYPE is identical to D6_CONSTRAINT_TYPE, the D6_CONSTRAINT_TYPE+D6_SPRING_CONSTRAINT_TYPE will likely become obsolete/deprecated at some stage
Definition at line 1117 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Reimplemented in btMultiBodyDynamicsWorld, btDeformableMultiBodyDynamicsWorld, btSoftMultiBodyDynamicsWorld, and btSoftRigidDynamicsWorld.
Definition at line 269 of file btDiscreteDynamicsWorld.cpp.
|
inline |
Definition at line 214 of file btDiscreteDynamicsWorld.h.
|
inline |
Definition at line 135 of file btDiscreteDynamicsWorld.h.
|
virtual |
Reimplemented from btDynamicsWorld.
Definition at line 1370 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Reimplemented from btDynamicsWorld.
Definition at line 1374 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 1361 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 512 of file btDiscreteDynamicsWorld.cpp.
|
inline |
Definition at line 228 of file btDiscreteDynamicsWorld.h.
|
inline |
Definition at line 233 of file btDiscreteDynamicsWorld.h.
|
inline |
Definition at line 238 of file btDiscreteDynamicsWorld.h.
|
virtual |
Reimplemented from btDynamicsWorld.
Definition at line 1366 of file btDiscreteDynamicsWorld.cpp.
|
inline |
Definition at line 125 of file btDiscreteDynamicsWorld.h.
|
inline |
Definition at line 130 of file btDiscreteDynamicsWorld.h.
|
inline |
Definition at line 204 of file btDiscreteDynamicsWorld.h.
|
inlinevirtual |
Implements btDynamicsWorld.
Reimplemented in btDeformableMultiBodyDynamicsWorld, btSoftMultiBodyDynamicsWorld, and btSoftRigidDynamicsWorld.
Definition at line 169 of file btDiscreteDynamicsWorld.h.
this should probably be switched on by default, but it is not well tested yet
Reimplemented in btMultiBodyDynamicsWorld, btDeformableMultiBodyDynamicsWorld, and btDiscreteDynamicsWorldMt.
Definition at line 1047 of file btDiscreteDynamicsWorld.cpp.
|
protected |
Definition at line 951 of file btDiscreteDynamicsWorld.cpp.
apply gravity, predict motion
perform collision detection
solve contact and other joint constraints
integrate transforms
update vehicle simulation
Reimplemented in btDeformableMultiBodyDynamicsWorld, btSoftMultiBodyDynamicsWorld, and btSoftRigidDynamicsWorld.
Definition at line 452 of file btDiscreteDynamicsWorld.cpp.
Reimplemented in btMultiBodyDynamicsWorld, btDeformableMultiBodyDynamicsWorld, btSoftMultiBodyDynamicsWorld, btSoftRigidDynamicsWorld, and btDiscreteDynamicsWorldMt.
Definition at line 1091 of file btDiscreteDynamicsWorld.cpp.
|
protected |
Definition at line 929 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 656 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
obsolete, use removeAction instead
Reimplemented from btDynamicsWorld.
Definition at line 676 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btCollisionWorld::removeCollisionObject
Reimplemented from btCollisionWorld.
Reimplemented in btDeformableMultiBodyDynamicsWorld, btSoftMultiBodyDynamicsWorld, and btSoftRigidDynamicsWorld.
Definition at line 522 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Reimplemented from btDynamicsWorld.
Definition at line 644 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 531 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
obsolete, use removeAction instead
Reimplemented from btDynamicsWorld.
Definition at line 666 of file btDiscreteDynamicsWorld.cpp.
would like to iterate over m_nonStaticRigidBodies, but unfortunately old API allows to switch status after adding kinematic objects to the world fix it for Bullet 3.x release
Reimplemented in btMultiBodyDynamicsWorld.
Definition at line 249 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Preliminary serialization test for Bullet 2.76. Loading those files requires a separate parser (see Bullet/Demos/SerializeDemo)
Reimplemented from btCollisionWorld.
Reimplemented in btMultiBodyDynamicsWorld, btSoftMultiBodyDynamicsWorld, and btSoftRigidDynamicsWorld.
Definition at line 1456 of file btDiscreteDynamicsWorld.cpp.
|
protected |
Definition at line 1405 of file btDiscreteDynamicsWorld.cpp.
|
protected |
Definition at line 1379 of file btDiscreteDynamicsWorld.cpp.
Definition at line 209 of file btDiscreteDynamicsWorld.h.
|
virtual |
Implements btDynamicsWorld.
Reimplemented in btMultiBodyDynamicsWorld.
Definition at line 1350 of file btDiscreteDynamicsWorld.cpp.
Implements btDynamicsWorld.
Reimplemented in btDeformableMultiBodyDynamicsWorld.
Definition at line 499 of file btDiscreteDynamicsWorld.cpp.
|
inline |
Interpolate motion state between previous and current transform, instead of current and next transform.
This can relieve discontinuities in the rendering, due to penetrations
Definition at line 224 of file btDiscreteDynamicsWorld.h.
Definition at line 180 of file btDiscreteDynamicsWorld.h.
Definition at line 200 of file btDiscreteDynamicsWorld.h.
|
virtual |
solve all the constraints for this island
Reimplemented in btMultiBodyDynamicsWorld, and btDiscreteDynamicsWorldMt.
Definition at line 681 of file btDiscreteDynamicsWorld.cpp.
Definition at line 1108 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
if maxSubSteps > 0, it will interpolate motion between fixedTimeStep's
Implements btDynamicsWorld.
Reimplemented in btDiscreteDynamicsWorldMt, and btDeformableMultiBodyDynamicsWorld.
Definition at line 382 of file btDiscreteDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 356 of file btDiscreteDynamicsWorld.cpp.
void btDiscreteDynamicsWorld::synchronizeSingleMotionState | ( | btRigidBody * | body | ) |
this can be useful to synchronize a single rigid body -> graphics object
Definition at line 335 of file btDiscreteDynamicsWorld.cpp.
Definition at line 584 of file btDiscreteDynamicsWorld.cpp.
Reimplemented in btMultiBodyDynamicsWorld, and btDeformableMultiBodyDynamicsWorld.
Definition at line 594 of file btDiscreteDynamicsWorld.cpp.
obsolete, use updateActions instead
Definition at line 186 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 63 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 61 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 47 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 43 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 55 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 51 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 45 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 67 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 54 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 49 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 59 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 58 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 69 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 70 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 65 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 41 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 40 of file btDiscreteDynamicsWorld.h.
|
protected |
Definition at line 60 of file btDiscreteDynamicsWorld.h.