Blender
V3.3
|
#include <btSimpleDynamicsWorld.h>
Protected Member Functions | |
void | predictUnconstraintMotion (btScalar timeStep) |
void | integrateTransforms (btScalar timeStep) |
![]() | |
void | serializeCollisionObjects (btSerializer *serializer) |
void | serializeContactManifolds (btSerializer *serializer) |
Protected Attributes | |
btConstraintSolver * | m_constraintSolver |
bool | m_ownsConstraintSolver |
btVector3 | m_gravity |
![]() | |
btInternalTickCallback | m_internalTickCallback |
btInternalTickCallback | m_internalPreTickCallback |
void * | m_worldUserInfo |
btContactSolverInfo | m_solverInfo |
![]() | |
btAlignedObjectArray< btCollisionObject * > | m_collisionObjects |
btDispatcher * | m_dispatcher1 |
btDispatcherInfo | m_dispatchInfo |
btBroadphaseInterface * | m_broadphasePairCache |
btIDebugDraw * | m_debugDrawer |
bool | m_forceUpdateAllAabbs |
Additional Inherited Members | |
![]() | |
static void | rayTestSingle (const btTransform &rayFromTrans, const btTransform &rayToTrans, btCollisionObject *collisionObject, const btCollisionShape *collisionShape, const btTransform &colObjWorldTransform, RayResultCallback &resultCallback) |
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) |
The btSimpleDynamicsWorld serves as unit-test and to verify more complicated and optimized dynamics worlds. Please use btDiscreteDynamicsWorld instead
Definition at line 27 of file btSimpleDynamicsWorld.h.
btSimpleDynamicsWorld::btSimpleDynamicsWorld | ( | btDispatcher * | dispatcher, |
btBroadphaseInterface * | pairCache, | ||
btConstraintSolver * | constraintSolver, | ||
btCollisionConfiguration * | collisionConfiguration | ||
) |
this btSimpleDynamicsWorld constructor creates dispatcher, broadphase pairCache and constraintSolver
Definition at line 35 of file btSimpleDynamicsWorld.cpp.
|
virtual |
Definition at line 43 of file btSimpleDynamicsWorld.cpp.
References btAlignedFree, m_constraintSolver, and m_ownsConstraintSolver.
|
virtual |
Implements btDynamicsWorld.
Definition at line 162 of file btSimpleDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 138 of file btSimpleDynamicsWorld.cpp.
References btCollisionWorld::addCollisionObject(), btRigidBody::getCollisionShape(), m_gravity, and btRigidBody::setGravity().
|
virtual |
Implements btDynamicsWorld.
Definition at line 148 of file btSimpleDynamicsWorld.cpp.
References btCollisionWorld::addCollisionObject(), btRigidBody::getCollisionShape(), m_gravity, mask(), and btRigidBody::setGravity().
|
virtual |
Implements btDynamicsWorld.
Definition at line 90 of file btSimpleDynamicsWorld.cpp.
References btCollisionObject, btRigidBody::clearForces(), btCollisionWorld::m_collisionObjects, btAlignedObjectArray< T >::size(), and btRigidBody::upcast().
Referenced by stepSimulation().
|
virtual |
Implements btDynamicsWorld.
Definition at line 158 of file btSimpleDynamicsWorld.cpp.
|
virtual |
Implements btDynamicsWorld.
Definition at line 257 of file btSimpleDynamicsWorld.cpp.
References m_constraintSolver.
|
virtual |
Implements btDynamicsWorld.
Definition at line 119 of file btSimpleDynamicsWorld.cpp.
References m_gravity.
|
inlinevirtual |
Implements btDynamicsWorld.
Definition at line 76 of file btSimpleDynamicsWorld.h.
References BT_SIMPLE_DYNAMICS_WORLD.
Definition at line 190 of file btSimpleDynamicsWorld.cpp.
References btCollisionObject, btTransform, btCollisionWorld::m_collisionObjects, btRigidBody::predictIntegratedTransform(), btRigidBody::proceedToTransform(), btAlignedObjectArray< T >::size(), and btRigidBody::upcast().
Referenced by stepSimulation().
Definition at line 208 of file btSimpleDynamicsWorld.cpp.
References btRigidBody::applyDamping(), btRigidBody::applyGravity(), btCollisionObject, btRigidBody::integrateVelocities(), btCollisionWorld::m_collisionObjects, btRigidBody::predictIntegratedTransform(), btAlignedObjectArray< T >::size(), and btRigidBody::upcast().
Referenced by stepSimulation().
|
virtual |
Implements btDynamicsWorld.
Definition at line 166 of file btSimpleDynamicsWorld.cpp.
|
virtual |
removeCollisionObject will first check if it is a rigid body, if so call removeRigidBody otherwise call btCollisionWorld::removeCollisionObject
Reimplemented from btCollisionWorld.
Definition at line 129 of file btSimpleDynamicsWorld.cpp.
References btCollisionWorld::removeCollisionObject(), removeRigidBody(), and btRigidBody::upcast().
|
virtual |
Implements btDynamicsWorld.
Definition at line 124 of file btSimpleDynamicsWorld.cpp.
References btCollisionWorld::removeCollisionObject().
Referenced by removeCollisionObject().
|
virtual |
Implements btDynamicsWorld.
Definition at line 247 of file btSimpleDynamicsWorld.cpp.
References btAlignedFree, m_constraintSolver, and m_ownsConstraintSolver.
Implements btDynamicsWorld.
Definition at line 105 of file btSimpleDynamicsWorld.cpp.
References btCollisionObject, btCollisionWorld::m_collisionObjects, m_gravity, btRigidBody::setGravity(), btAlignedObjectArray< T >::size(), and btRigidBody::upcast().
|
virtual |
maxSubSteps/fixedTimeStep for interpolation is currently ignored for btSimpleDynamicsWorld, use btDiscreteDynamicsWorld instead
apply gravity, predict motion
perform collision detection
solve contact constraints
integrate transforms
Implements btDynamicsWorld.
Definition at line 49 of file btSimpleDynamicsWorld.cpp.
References btConstraintSolver::allSolved(), btPersistentManifold(), clearForces(), btCollisionWorld::getCollisionObjectArray(), btCollisionWorld::getDebugDrawer(), btCollisionWorld::getDispatchInfo(), btCollisionWorld::getNumCollisionObjects(), btDispatcher::getNumManifolds(), infoGlobal, integrateTransforms(), m_constraintSolver, btDispatcherInfo::m_debugDraw, btCollisionWorld::m_debugDrawer, btCollisionWorld::m_dispatcher1, btDispatcherInfo::m_stepCount, btDispatcherInfo::m_timeStep, btContactSolverInfoData::m_timeStep, manifoldPtr, numManifolds, btCollisionWorld::performDiscreteCollisionDetection(), predictUnconstraintMotion(), btConstraintSolver::prepareSolve(), btConstraintSolver::solveGroup(), synchronizeMotionStates(), updateAabbs(), and void.
|
virtual |
Implements btDynamicsWorld.
Definition at line 230 of file btSimpleDynamicsWorld.cpp.
References btCollisionObject, btRigidBody::getMotionState(), ISLAND_SLEEPING, btCollisionWorld::m_collisionObjects, btMotionState::setWorldTransform(), btAlignedObjectArray< T >::size(), and btRigidBody::upcast().
Referenced by stepSimulation().
|
virtual |
Reimplemented from btCollisionWorld.
Definition at line 170 of file btSimpleDynamicsWorld.cpp.
References btCollisionObject, btTransform, btVector3, btCollisionWorld::getBroadphase(), btCollisionWorld::m_collisionObjects, btCollisionWorld::m_dispatcher1, btBroadphaseInterface::setAabb(), btAlignedObjectArray< T >::size(), and btRigidBody::upcast().
Referenced by stepSimulation().
|
protected |
Definition at line 30 of file btSimpleDynamicsWorld.h.
Referenced by getConstraintSolver(), setConstraintSolver(), stepSimulation(), and ~btSimpleDynamicsWorld().
|
protected |
Definition at line 38 of file btSimpleDynamicsWorld.h.
Referenced by addRigidBody(), getGravity(), and setGravity().
|
protected |
Definition at line 32 of file btSimpleDynamicsWorld.h.
Referenced by setConstraintSolver(), and ~btSimpleDynamicsWorld().