Blender  V3.3
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
btSimpleDynamicsWorld Class Reference

#include <btSimpleDynamicsWorld.h>

Inheritance diagram for btSimpleDynamicsWorld:
btDynamicsWorld btCollisionWorld

Public Member Functions

 btSimpleDynamicsWorld (btDispatcher *dispatcher, btBroadphaseInterface *pairCache, btConstraintSolver *constraintSolver, btCollisionConfiguration *collisionConfiguration)
 this btSimpleDynamicsWorld constructor creates dispatcher, broadphase pairCache and constraintSolver More...
 
virtual ~btSimpleDynamicsWorld ()
 
virtual int stepSimulation (btScalar timeStep, int maxSubSteps=1, btScalar fixedTimeStep=btScalar(1.)/btScalar(60.))
 maxSubSteps/fixedTimeStep for interpolation is currently ignored for btSimpleDynamicsWorld, use btDiscreteDynamicsWorld instead More...
 
virtual void setGravity (const btVector3 &gravity)
 
virtual btVector3 getGravity () const
 
virtual void addRigidBody (btRigidBody *body)
 
virtual void addRigidBody (btRigidBody *body, int group, int mask)
 
virtual void removeRigidBody (btRigidBody *body)
 
virtual void debugDrawWorld ()
 
virtual void addAction (btActionInterface *action)
 
virtual void removeAction (btActionInterface *action)
 
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 updateAabbs ()
 
virtual void synchronizeMotionStates ()
 
virtual void setConstraintSolver (btConstraintSolver *solver)
 
virtual btConstraintSolvergetConstraintSolver ()
 
virtual btDynamicsWorldType getWorldType () const
 
virtual void clearForces ()
 
- Public Member Functions inherited from btDynamicsWorld
 btDynamicsWorld (btDispatcher *dispatcher, btBroadphaseInterface *broadphase, btCollisionConfiguration *collisionConfiguration)
 
virtual ~btDynamicsWorld ()
 
virtual void addConstraint (btTypedConstraint *constraint, bool disableCollisionsBetweenLinkedBodies=false)
 
virtual void removeConstraint (btTypedConstraint *constraint)
 
virtual int getNumConstraints () const
 
virtual btTypedConstraintgetConstraint (int index)
 
virtual const btTypedConstraintgetConstraint (int index) const
 
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)
 
voidgetWorldUserInfo () const
 
btContactSolverInfogetSolverInfo ()
 
const btContactSolverInfogetSolverInfo () const
 
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...
 
- Public Member Functions inherited from btCollisionWorld
 btCollisionWorld (btDispatcher *dispatcher, btBroadphaseInterface *broadphasePairCache, btCollisionConfiguration *collisionConfiguration)
 for debug drawing More...
 
virtual ~btCollisionWorld ()
 
void setBroadphase (btBroadphaseInterface *pairCache)
 
const btBroadphaseInterfacegetBroadphase () const
 
btBroadphaseInterfacegetBroadphase ()
 
btOverlappingPairCachegetPairCache ()
 
btDispatchergetDispatcher ()
 
const btDispatchergetDispatcher () const
 
void updateSingleAabb (btCollisionObject *colObj)
 
virtual void computeOverlappingPairs ()
 
virtual void setDebugDrawer (btIDebugDraw *debugDrawer)
 
virtual btIDebugDrawgetDebugDrawer ()
 
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
 
void convexSweepTest (const btConvexShape *castShape, const btTransform &from, const btTransform &to, ConvexResultCallback &resultCallback, btScalar allowedCcdPenetration=btScalar(0.)) const
 
void contactTest (btCollisionObject *colObj, ContactResultCallback &resultCallback)
 
void contactPairTest (btCollisionObject *colObjA, btCollisionObject *colObjB, ContactResultCallback &resultCallback)
 
virtual void addCollisionObject (btCollisionObject *collisionObject, int collisionFilterGroup=btBroadphaseProxy::DefaultFilter, int collisionFilterMask=btBroadphaseProxy::AllFilter)
 
virtual void refreshBroadphaseProxy (btCollisionObject *collisionObject)
 
btCollisionObjectArraygetCollisionObjectArray ()
 
const btCollisionObjectArraygetCollisionObjectArray () const
 
virtual void performDiscreteCollisionDetection ()
 
btDispatcherInfogetDispatchInfo ()
 
const btDispatcherInfogetDispatchInfo () const
 
bool getForceUpdateAllAabbs () const
 
void setForceUpdateAllAabbs (bool forceUpdateAllAabbs)
 
virtual void serialize (btSerializer *serializer)
 Preliminary serialization test for Bullet 2.76. Loading those files requires a separate parser (Bullet/Demos/SerializeDemo) More...
 

Protected Member Functions

void predictUnconstraintMotion (btScalar timeStep)
 
void integrateTransforms (btScalar timeStep)
 
- Protected Member Functions inherited from btCollisionWorld
void serializeCollisionObjects (btSerializer *serializer)
 
void serializeContactManifolds (btSerializer *serializer)
 

Protected Attributes

btConstraintSolverm_constraintSolver
 
bool m_ownsConstraintSolver
 
btVector3 m_gravity
 
- Protected Attributes inherited from btDynamicsWorld
btInternalTickCallback m_internalTickCallback
 
btInternalTickCallback m_internalPreTickCallback
 
voidm_worldUserInfo
 
btContactSolverInfo m_solverInfo
 
- Protected Attributes inherited from btCollisionWorld
btAlignedObjectArray< btCollisionObject * > m_collisionObjects
 
btDispatcherm_dispatcher1
 
btDispatcherInfo m_dispatchInfo
 
btBroadphaseInterfacem_broadphasePairCache
 
btIDebugDrawm_debugDrawer
 
bool m_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)
 
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)
 

Detailed Description

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.

Constructor & Destructor Documentation

◆ btSimpleDynamicsWorld()

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.

◆ ~btSimpleDynamicsWorld()

btSimpleDynamicsWorld::~btSimpleDynamicsWorld ( )
virtual

Member Function Documentation

◆ addAction()

void btSimpleDynamicsWorld::addAction ( btActionInterface action)
virtual

Implements btDynamicsWorld.

Definition at line 162 of file btSimpleDynamicsWorld.cpp.

◆ addRigidBody() [1/2]

void btSimpleDynamicsWorld::addRigidBody ( btRigidBody body)
virtual

◆ addRigidBody() [2/2]

void btSimpleDynamicsWorld::addRigidBody ( btRigidBody body,
int  group,
int  mask 
)
virtual

◆ clearForces()

void btSimpleDynamicsWorld::clearForces ( )
virtual

◆ debugDrawWorld()

void btSimpleDynamicsWorld::debugDrawWorld ( )
virtual

Implements btDynamicsWorld.

Definition at line 158 of file btSimpleDynamicsWorld.cpp.

◆ getConstraintSolver()

btConstraintSolver * btSimpleDynamicsWorld::getConstraintSolver ( )
virtual

Implements btDynamicsWorld.

Definition at line 257 of file btSimpleDynamicsWorld.cpp.

References m_constraintSolver.

◆ getGravity()

btVector3 btSimpleDynamicsWorld::getGravity ( ) const
virtual

Implements btDynamicsWorld.

Definition at line 119 of file btSimpleDynamicsWorld.cpp.

References m_gravity.

◆ getWorldType()

virtual btDynamicsWorldType btSimpleDynamicsWorld::getWorldType ( ) const
inlinevirtual

Implements btDynamicsWorld.

Definition at line 76 of file btSimpleDynamicsWorld.h.

References BT_SIMPLE_DYNAMICS_WORLD.

◆ integrateTransforms()

void btSimpleDynamicsWorld::integrateTransforms ( btScalar  timeStep)
protected

◆ predictUnconstraintMotion()

void btSimpleDynamicsWorld::predictUnconstraintMotion ( btScalar  timeStep)
protected

◆ removeAction()

void btSimpleDynamicsWorld::removeAction ( btActionInterface action)
virtual

Implements btDynamicsWorld.

Definition at line 166 of file btSimpleDynamicsWorld.cpp.

◆ removeCollisionObject()

void btSimpleDynamicsWorld::removeCollisionObject ( btCollisionObject collisionObject)
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().

◆ removeRigidBody()

void btSimpleDynamicsWorld::removeRigidBody ( btRigidBody body)
virtual

Implements btDynamicsWorld.

Definition at line 124 of file btSimpleDynamicsWorld.cpp.

References btCollisionWorld::removeCollisionObject().

Referenced by removeCollisionObject().

◆ setConstraintSolver()

void btSimpleDynamicsWorld::setConstraintSolver ( btConstraintSolver solver)
virtual

Implements btDynamicsWorld.

Definition at line 247 of file btSimpleDynamicsWorld.cpp.

References btAlignedFree, m_constraintSolver, and m_ownsConstraintSolver.

◆ setGravity()

void btSimpleDynamicsWorld::setGravity ( const btVector3 gravity)
virtual

◆ stepSimulation()

int btSimpleDynamicsWorld::stepSimulation ( btScalar  timeStep,
int  maxSubSteps = 1,
btScalar  fixedTimeStep = btScalar(1.) / btScalar(60.) 
)
virtual

◆ synchronizeMotionStates()

void btSimpleDynamicsWorld::synchronizeMotionStates ( )
virtual

◆ updateAabbs()

void btSimpleDynamicsWorld::updateAabbs ( )
virtual

Member Data Documentation

◆ m_constraintSolver

btConstraintSolver* btSimpleDynamicsWorld::m_constraintSolver
protected

◆ m_gravity

btVector3 btSimpleDynamicsWorld::m_gravity
protected

Definition at line 38 of file btSimpleDynamicsWorld.h.

Referenced by addRigidBody(), getGravity(), and setGravity().

◆ m_ownsConstraintSolver

bool btSimpleDynamicsWorld::m_ownsConstraintSolver
protected

Definition at line 32 of file btSimpleDynamicsWorld.h.

Referenced by setConstraintSolver(), and ~btSimpleDynamicsWorld().


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