![]() |
Blender V2.61 - r43446
|
CollisionWorld is interface and container for the collision detection. More...
#include <btCollisionWorld.h>
Classes | |
struct | AllHitsRayResultCallback |
struct | ClosestConvexResultCallback |
struct | ClosestRayResultCallback |
struct | ContactResultCallback |
ContactResultCallback is used to report contact points. More... | |
struct | ConvexResultCallback |
RayResultCallback is used to report new raycast results. More... | |
struct | LocalConvexResult |
struct | LocalRayResult |
struct | LocalShapeInfo |
struct | RayResultCallback |
RayResultCallback is used to report new raycast results. More... | |
Public Member Functions | |
btCollisionWorld (btDispatcher *dispatcher, btBroadphaseInterface *broadphasePairCache, btCollisionConfiguration *collisionConfiguration) | |
for debug drawing | |
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 | setDebugDrawer (btIDebugDraw *debugDrawer) |
virtual btIDebugDraw * | getDebugDrawer () |
virtual void | debugDrawWorld () |
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, short int collisionFilterGroup=btBroadphaseProxy::DefaultFilter, short int collisionFilterMask=btBroadphaseProxy::AllFilter) |
btCollisionObjectArray & | getCollisionObjectArray () |
const btCollisionObjectArray & | getCollisionObjectArray () const |
virtual void | removeCollisionObject (btCollisionObject *collisionObject) |
virtual void | performDiscreteCollisionDetection () |
btDispatcherInfo & | getDispatchInfo () |
const btDispatcherInfo & | getDispatchInfo () 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) | |
Static Public Member Functions | |
static void | rayTestSingle (const btTransform &rayFromTrans, const btTransform &rayToTrans, btCollisionObject *collisionObject, const btCollisionShape *collisionShape, const btTransform &colObjWorldTransform, 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. | |
Protected Member Functions | |
void | serializeCollisionObjects (btSerializer *serializer) |
Protected Attributes | |
btAlignedObjectArray < btCollisionObject * > | m_collisionObjects |
btDispatcher * | m_dispatcher1 |
btDispatcherInfo | m_dispatchInfo |
btStackAlloc * | m_stackAlloc |
btBroadphaseInterface * | m_broadphasePairCache |
btIDebugDraw * | m_debugDrawer |
bool | m_forceUpdateAllAabbs |
CollisionWorld is interface and container for the collision detection.
Definition at line 82 of file btCollisionWorld.h.
btCollisionWorld::btCollisionWorld | ( | btDispatcher * | dispatcher, |
btBroadphaseInterface * | broadphasePairCache, | ||
btCollisionConfiguration * | collisionConfiguration | ||
) |
for debug drawing
Definition at line 68 of file btCollisionWorld.cpp.
References btCollisionConfiguration::getStackAllocator(), m_dispatchInfo, m_stackAlloc, and btDispatcherInfo::m_stackAllocator.
btCollisionWorld::~btCollisionWorld | ( | ) | [virtual] |
Definition at line 79 of file btCollisionWorld.cpp.
References btOverlappingPairCache::cleanProxyFromPairs(), btBroadphaseInterface::destroyProxy(), getBroadphase(), btBroadphaseInterface::getOverlappingPairCache(), i, m_collisionObjects, m_dispatcher1, and btAlignedObjectArray< T >::size().
void btCollisionWorld::addCollisionObject | ( | btCollisionObject * | collisionObject, |
short int | collisionFilterGroup = btBroadphaseProxy::DefaultFilter , |
||
short int | collisionFilterMask = btBroadphaseProxy::AllFilter |
||
) | [virtual] |
Reimplemented in btDiscreteDynamicsWorld.
Definition at line 112 of file btCollisionWorld.cpp.
References btAssert, btAlignedObjectArray< T >::findLinearSearch(), getBroadphase(), m_collisionObjects, m_dispatcher1, btAlignedObjectArray< T >::push_back(), and btAlignedObjectArray< T >::size().
Referenced by btSimpleDynamicsWorld::addRigidBody().
void btCollisionWorld::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. it reports one or more contact points (including the one with deepest penetration)
Definition at line 1117 of file btCollisionWorld.cpp.
References btDispatcher::findAlgorithm(), btDispatcher::freeCollisionAlgorithm(), getDispatcher(), getDispatchInfo(), btCollisionAlgorithm::processCollision(), and btCollisionAlgorithm::~btCollisionAlgorithm().
void btCollisionWorld::contactTest | ( | btCollisionObject * | colObj, |
ContactResultCallback & | resultCallback | ||
) |
contactTest performs a discrete collision test between colObj against all objects in the btCollisionWorld, and calls the resultCallback. it reports one or more contact points for every overlapping object (including the one with deepest penetration)
contactTest performs a discrete collision test against all objects in the btCollisionWorld, and calls the resultCallback. it reports one or more contact points for every overlapping object (including the one with deepest penetration)
Definition at line 1105 of file btCollisionWorld.cpp.
References btBroadphaseInterface::aabbTest(), and m_broadphasePairCache.
void btCollisionWorld::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.
use the broadphase to accelerate the search for objects, based on their aabb and for each object with ray-aabb overlap, perform an exact ray test unfortunately the implementation for rayTest and convexSweepTest duplicated, albeit practically identical
Definition at line 943 of file btCollisionWorld.cpp.
References AabbExpand(), BT_PROFILE, btRayAabb(), btTransformUtil::calculateVelocity(), btTransform::getOrigin(), btTransform::getRotation(), i, m_broadphasePairCache, m_collisionObjects, btCollisionWorld::ConvexResultCallback::needsCollision(), objectQuerySingle(), R, btBroadphaseInterface::rayTest(), btTransform::setIdentity(), btTransform::setRotation(), and btAlignedObjectArray< T >::size().
Referenced by btDiscreteDynamicsWorld::integrateTransforms(), btKinematicCharacterController::stepDown(), btKinematicCharacterController::stepForwardAndStrafe(), and btKinematicCharacterController::stepUp().
void btCollisionWorld::debugDrawObject | ( | const btTransform & | worldTransform, |
const btCollisionShape * | shape, | ||
const btVector3 & | color | ||
) | [virtual] |
for polyhedral shapes
Definition at line 1181 of file btCollisionWorld.cpp.
References BOX_SHAPE_PROXYTYPE, BT_LARGE_FLOAT, CAPSULE_SHAPE_PROXYTYPE, MakeCursor::color, COMPOUND_SHAPE_PROXYTYPE, CONE_SHAPE_PROXYTYPE, CONVEX_TRIANGLEMESH_SHAPE_PROXYTYPE, CYLINDER_SHAPE_PROXYTYPE, btIDebugDraw::drawBox(), btIDebugDraw::drawCapsule(), btIDebugDraw::drawCone(), btIDebugDraw::drawCylinder(), btIDebugDraw::drawLine(), btIDebugDraw::drawPlane(), btIDebugDraw::drawSphere(), btIDebugDraw::drawTransform(), btConeShape::getConeUpIndex(), getDebugDrawer(), btPolyhedralConvexShape::getEdge(), btBoxShape::getHalfExtentsWithMargin(), btCylinderShape::getHalfExtentsWithMargin(), btCapsuleShape::getHalfHeight(), btConeShape::getHeight(), btConvexTriangleMeshShape::getMeshInterface(), btPolyhedralConvexShape::getNumEdges(), btConeShape::getRadius(), btCylinderShape::getRadius(), btCapsuleShape::getRadius(), btCollisionShape::getShapeType(), btMultiSphereShape::getSphereCount(), btMultiSphereShape::getSpherePosition(), btMultiSphereShape::getSphereRadius(), btCylinderShape::getUpAxis(), btCapsuleShape::getUpAxis(), i, btStridingMeshInterface::InternalProcessAllTriangles(), btCollisionShape::isConcave(), btCollisionShape::isPolyhedral(), MULTI_SPHERE_SHAPE_PROXYTYPE, btConcaveShape::processAllTriangles(), btTransform::setIdentity(), btTransform::setOrigin(), SPHERE_SHAPE_PROXYTYPE, and STATIC_PLANE_PROXYTYPE.
Referenced by debugDrawWorld().
void btCollisionWorld::debugDrawWorld | ( | ) | [virtual] |
Reimplemented in btDiscreteDynamicsWorld, btDynamicsWorld, btSimpleDynamicsWorld, and btSoftRigidDynamicsWorld.
Definition at line 1325 of file btCollisionWorld.cpp.
References ACTIVE_TAG, MakeCursor::color, btIDebugDraw::DBG_DrawAabb, btIDebugDraw::DBG_DrawContactPoints, btIDebugDraw::DBG_DrawWireframe, debugDrawObject(), DISABLE_DEACTIVATION, DISABLE_SIMULATION, btIDebugDraw::drawAabb(), btIDebugDraw::drawContactPoint(), gContactBreakingThreshold, getDebugDrawer(), btIDebugDraw::getDebugMode(), getDispatcher(), btManifoldPoint::getDistance(), btManifoldPoint::getLifeTime(), btDispatcher::getManifoldByIndexInternal(), btDispatcher::getNumManifolds(), i, ISLAND_SLEEPING, m_collisionObjects, m_debugDrawer, btManifoldPoint::m_normalWorldOnB, btManifoldPoint::m_positionWorldOnB, btAlignedObjectArray< T >::size(), and WANTS_DEACTIVATION.
btBroadphaseInterface* btCollisionWorld::getBroadphase | ( | ) | [inline] |
Definition at line 123 of file btCollisionWorld.h.
References m_broadphasePairCache.
const btBroadphaseInterface* btCollisionWorld::getBroadphase | ( | ) | const [inline] |
Definition at line 118 of file btCollisionWorld.h.
References m_broadphasePairCache.
Referenced by addCollisionObject(), btDiscreteDynamicsWorld::integrateTransforms(), removeCollisionObject(), btSimpleDynamicsWorld::updateAabbs(), and ~btCollisionWorld().
btCollisionObjectArray& btCollisionWorld::getCollisionObjectArray | ( | ) | [inline] |
Definition at line 469 of file btCollisionWorld.h.
References m_collisionObjects.
Referenced by btSimulationIslandManager::buildAndProcessIslands(), btSimulationIslandManager::buildIslands(), CcdPhysicsController::ReplaceControllerShape(), btSimpleDynamicsWorld::stepSimulation(), btSimulationIslandManager::storeIslandActivationState(), and btSimulationIslandManager::updateActivationState().
const btCollisionObjectArray& btCollisionWorld::getCollisionObjectArray | ( | ) | const [inline] |
Definition at line 474 of file btCollisionWorld.h.
References m_collisionObjects.
virtual btIDebugDraw* btCollisionWorld::getDebugDrawer | ( | ) | [inline, virtual] |
Definition at line 153 of file btCollisionWorld.h.
References m_debugDrawer.
Referenced by btDiscreteDynamicsWorld::debugDrawConstraint(), debugDrawObject(), btDiscreteDynamicsWorld::debugDrawWorld(), debugDrawWorld(), btSoftRigidDynamicsWorld::debugDrawWorld(), CcdPhysicsEnvironment::debugDrawWorld(), btContinuousDynamicsWorld::internalSingleStepSimulation(), btDiscreteDynamicsWorld::internalSingleStepSimulation(), btDiscreteDynamicsWorld::stepSimulation(), and btSimpleDynamicsWorld::stepSimulation().
btDispatcher* btCollisionWorld::getDispatcher | ( | ) | [inline] |
Definition at line 134 of file btCollisionWorld.h.
References m_dispatcher1.
Referenced by btDiscreteDynamicsWorld::calculateSimulationIslands(), btContinuousDynamicsWorld::calculateTimeOfImpacts(), contactPairTest(), debugDrawWorld(), btDiscreteDynamicsWorld::integrateTransforms(), performDiscreteCollisionDetection(), btSingleContactCallback::process(), btKinematicCharacterController::recoverFromPenetration(), CcdPhysicsEnvironment::refreshCcdPhysicsController(), CcdPhysicsController::ReplaceControllerShape(), and btDiscreteDynamicsWorld::solveConstraints().
const btDispatcher* btCollisionWorld::getDispatcher | ( | ) | const [inline] |
Definition at line 139 of file btCollisionWorld.h.
References m_dispatcher1.
const btDispatcherInfo& btCollisionWorld::getDispatchInfo | ( | ) | const [inline] |
Definition at line 489 of file btCollisionWorld.h.
References m_dispatchInfo.
btDispatcherInfo& btCollisionWorld::getDispatchInfo | ( | ) | [inline] |
Definition at line 484 of file btCollisionWorld.h.
References m_dispatchInfo.
Referenced by btContinuousDynamicsWorld::calculateTimeOfImpacts(), contactPairTest(), btContinuousDynamicsWorld::internalSingleStepSimulation(), btDiscreteDynamicsWorld::internalSingleStepSimulation(), performDiscreteCollisionDetection(), btSingleContactCallback::process(), btKinematicCharacterController::recoverFromPenetration(), btKinematicCharacterController::stepDown(), btKinematicCharacterController::stepForwardAndStrafe(), btSimpleDynamicsWorld::stepSimulation(), btKinematicCharacterController::stepUp(), and updateSingleAabb().
bool btCollisionWorld::getForceUpdateAllAabbs | ( | ) | const [inline] |
Definition at line 494 of file btCollisionWorld.h.
References m_forceUpdateAllAabbs.
int btCollisionWorld::getNumCollisionObjects | ( | ) | const [inline] |
Definition at line 429 of file btCollisionWorld.h.
References m_collisionObjects, and btAlignedObjectArray< T >::size().
Referenced by btSoftRigidDynamicsWorld::rayTest(), rayTest(), btDiscreteDynamicsWorld::solveConstraints(), and btSimpleDynamicsWorld::stepSimulation().
btOverlappingPairCache* btCollisionWorld::getPairCache | ( | ) | [inline] |
Definition at line 128 of file btCollisionWorld.h.
References btBroadphaseInterface::getOverlappingPairCache(), and m_broadphasePairCache.
Referenced by btSimulationIslandManager::findUnions(), CcdPhysicsEnvironment::refreshCcdPhysicsController(), and CcdPhysicsController::ReplaceControllerShape().
void btCollisionWorld::objectQuerySingle | ( | const btConvexShape * | castShape, |
const btTransform & | rayFromTrans, | ||
const btTransform & | rayToTrans, | ||
btCollisionObject * | collisionObject, | ||
const btCollisionShape * | collisionShape, | ||
const btTransform & | colObjWorldTransform, | ||
ConvexResultCallback & | resultCallback, | ||
btScalar | allowedPenetration | ||
) | [static] |
objectQuerySingle performs a collision detection query and calls the resultCallback. It is used internally by rayTest.
Definition at line 554 of file btCollisionWorld.cpp.
References btCollisionWorld::ConvexResultCallback::addSingleResult(), BT_PROFILE, btConvexCast::calcTimeOfImpact(), btTransform::getBasis(), btConcaveShape::getMargin(), btTransform::getOrigin(), btCollisionShape::getShapeType(), i, btTransform::inverse(), btCollisionShape::isCompound(), btCollisionShape::isConcave(), btCollisionShape::isConvex(), btConvexCast::CastResult::m_allowedPenetration, btCollisionWorld::ConvexResultCallback::m_closestHitFraction, btConvexCast::CastResult::m_fraction, btConvexCast::CastResult::m_hitPoint, btCollisionWorld::LocalConvexResult::m_localShapeInfo, btConvexCast::CastResult::m_normal, btCollisionWorld::LocalShapeInfo::m_shapePart, btCollisionWorld::LocalShapeInfo::m_triangleIndex, NULL, p, btConcaveShape::processAllTriangles(), and TRIANGLE_MESH_SHAPE_PROXYTYPE.
Referenced by convexSweepTest(), and btSingleSweepCallback::process().
void btCollisionWorld::performDiscreteCollisionDetection | ( | ) | [virtual] |
Definition at line 210 of file btCollisionWorld.cpp.
References BT_PROFILE, btBroadphaseInterface::calculateOverlappingPairs(), btDispatcher::dispatchAllCollisionPairs(), getDispatcher(), getDispatchInfo(), btBroadphaseInterface::getOverlappingPairCache(), m_broadphasePairCache, m_dispatcher1, and updateAabbs().
Referenced by btContinuousDynamicsWorld::internalSingleStepSimulation(), btDiscreteDynamicsWorld::internalSingleStepSimulation(), and btSimpleDynamicsWorld::stepSimulation().
void btCollisionWorld::rayTest | ( | const btVector3 & | rayFromWorld, |
const btVector3 & | rayToWorld, | ||
RayResultCallback & | resultCallback | ||
) | const [virtual] |
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.
use the broadphase to accelerate the search for objects, based on their aabb and for each object with ray-aabb overlap, perform an exact ray test
Reimplemented in btSoftRigidDynamicsWorld.
Definition at line 865 of file btCollisionWorld.cpp.
References getNumCollisionObjects(), i, m_broadphasePairCache, m_collisionObjects, btSingleRayCallback::process(), and btBroadphaseInterface::rayTest().
Referenced by btDefaultVehicleRaycaster::castRay(), and rayTestSingle().
void btCollisionWorld::rayTestSingle | ( | const btTransform & | rayFromTrans, |
const btTransform & | rayToTrans, | ||
btCollisionObject * | collisionObject, | ||
const btCollisionShape * | collisionShape, | ||
const btTransform & | colObjWorldTransform, | ||
RayResultCallback & | resultCallback | ||
) | [static] |
rayTestSingle performs a raycast call and calls the resultCallback. It is used internally by rayTest. In a future implementation, we consider moving the ray test as a virtual method in btCollisionShape. This allows more customization.
optimized version for btBvhTriangleMeshShape
Reimplemented in btSoftRigidDynamicsWorld.
Definition at line 263 of file btCollisionWorld.cpp.
References btCollisionWorld::RayResultCallback::addSingleResult(), btSubsimplexConvexCast::calcTimeOfImpact(), btDbvtNode::dataAsInt, btTransform::getBasis(), btTransform::getOrigin(), btCollisionShape::getShapeType(), i, btTransform::inverse(), btTransform::inverseTimes(), btCollisionShape::isCompound(), btCollisionShape::isConcave(), btCollisionShape::isConvex(), btCollisionWorld::RayResultCallback::m_closestHitFraction, btCollisionWorld::RayResultCallback::m_flags, btConvexCast::CastResult::m_fraction, btCollisionWorld::LocalRayResult::m_localShapeInfo, btConvexCast::CastResult::m_normal, btDbvt::m_root, btCollisionWorld::LocalShapeInfo::m_shapePart, btCollisionWorld::LocalShapeInfo::m_triangleIndex, NULL, p, btConcaveShape::processAllTriangles(), rayTest(), and TRIANGLE_MESH_SHAPE_PROXYTYPE.
Referenced by btSingleRayCallback::process().
void btCollisionWorld::removeCollisionObject | ( | btCollisionObject * | collisionObject | ) | [virtual] |
Reimplemented in btDiscreteDynamicsWorld, btSimpleDynamicsWorld, and btSoftRigidDynamicsWorld.
Definition at line 235 of file btCollisionWorld.cpp.
References btOverlappingPairCache::cleanProxyFromPairs(), btBroadphaseInterface::destroyProxy(), getBroadphase(), btBroadphaseInterface::getOverlappingPairCache(), m_collisionObjects, m_dispatcher1, and btAlignedObjectArray< T >::remove().
void btCollisionWorld::serialize | ( | btSerializer * | serializer | ) | [virtual] |
Preliminary serialization test for Bullet 2.76. Loading those files requires a separate parser (Bullet/Demos/SerializeDemo)
Reimplemented in btDiscreteDynamicsWorld, and btSoftRigidDynamicsWorld.
Definition at line 1436 of file btCollisionWorld.cpp.
References btSerializer::finishSerialization(), serializeCollisionObjects(), and btSerializer::startSerialization().
void btCollisionWorld::serializeCollisionObjects | ( | btSerializer * | serializer | ) | [protected] |
keep track of shapes already serialized
Definition at line 1405 of file btCollisionWorld.cpp.
References btHashMap< Key, Value >::find(), i, btHashMap< Key, Value >::insert(), m_collisionObjects, btCollisionShape::serializeSingleShape(), and btAlignedObjectArray< T >::size().
Referenced by btSoftRigidDynamicsWorld::serialize(), serialize(), and btDiscreteDynamicsWorld::serialize().
void btCollisionWorld::setBroadphase | ( | btBroadphaseInterface * | pairCache | ) | [inline] |
Definition at line 113 of file btCollisionWorld.h.
References m_broadphasePairCache.
virtual void btCollisionWorld::setDebugDrawer | ( | btIDebugDraw * | debugDrawer | ) | [inline, virtual] |
Definition at line 148 of file btCollisionWorld.h.
References m_debugDrawer.
Referenced by CcdPhysicsEnvironment::setDebugDrawer().
void btCollisionWorld::setForceUpdateAllAabbs | ( | bool | forceUpdateAllAabbs | ) | [inline] |
Definition at line 498 of file btCollisionWorld.h.
References m_forceUpdateAllAabbs.
void btCollisionWorld::updateAabbs | ( | ) | [virtual] |
Reimplemented in btSimpleDynamicsWorld.
Definition at line 191 of file btCollisionWorld.cpp.
References BT_PROFILE, i, m_collisionObjects, m_forceUpdateAllAabbs, btAlignedObjectArray< T >::size(), and updateSingleAabb().
Referenced by btContinuousDynamicsWorld::internalSingleStepSimulation(), and performDiscreteCollisionDetection().
void btCollisionWorld::updateSingleAabb | ( | btCollisionObject * | colObj | ) |
Definition at line 148 of file btCollisionWorld.cpp.
References DISABLE_SIMULATION, gContactBreakingThreshold, getDispatchInfo(), m_broadphasePairCache, m_debugDrawer, m_dispatcher1, btIDebugDraw::reportErrorWarning(), and btBroadphaseInterface::setAabb().
Referenced by updateAabbs().
Definition at line 96 of file btCollisionWorld.h.
Referenced by btContinuousDynamicsWorld::calculateTimeOfImpacts(), contactTest(), convexSweepTest(), getBroadphase(), getPairCache(), performDiscreteCollisionDetection(), btSoftRigidDynamicsWorld::rayTest(), rayTest(), setBroadphase(), and updateSingleAabb().
btAlignedObjectArray<btCollisionObject*> btCollisionWorld::m_collisionObjects [protected] |
Definition at line 88 of file btCollisionWorld.h.
Referenced by addCollisionObject(), btSimpleDynamicsWorld::clearForces(), convexSweepTest(), debugDrawWorld(), getCollisionObjectArray(), getNumCollisionObjects(), btSimpleDynamicsWorld::integrateTransforms(), btSimpleDynamicsWorld::predictUnconstraintMotion(), btSoftRigidDynamicsWorld::rayTest(), rayTest(), removeCollisionObject(), btDiscreteDynamicsWorld::saveKinematicState(), serializeCollisionObjects(), btDiscreteDynamicsWorld::serializeRigidBodies(), btSoftRigidDynamicsWorld::serializeSoftBodies(), btSimpleDynamicsWorld::setGravity(), btDiscreteDynamicsWorld::synchronizeMotionStates(), btSimpleDynamicsWorld::synchronizeMotionStates(), updateAabbs(), btSimpleDynamicsWorld::updateAabbs(), and ~btCollisionWorld().
btIDebugDraw* btCollisionWorld::m_debugDrawer [protected] |
Definition at line 98 of file btCollisionWorld.h.
Referenced by btDiscreteDynamicsWorld::debugDrawWorld(), debugDrawWorld(), btSoftRigidDynamicsWorld::debugDrawWorld(), getDebugDrawer(), setDebugDrawer(), btDiscreteDynamicsWorld::solveConstraints(), btSimpleDynamicsWorld::stepSimulation(), and updateSingleAabb().
btDispatcher* btCollisionWorld::m_dispatcher1 [protected] |
Definition at line 90 of file btCollisionWorld.h.
Referenced by addCollisionObject(), btContinuousDynamicsWorld::calculateTimeOfImpacts(), getDispatcher(), performDiscreteCollisionDetection(), removeCollisionObject(), btDiscreteDynamicsWorld::solveConstraints(), btSimpleDynamicsWorld::stepSimulation(), btSimpleDynamicsWorld::updateAabbs(), updateSingleAabb(), and ~btCollisionWorld().
btDispatcherInfo btCollisionWorld::m_dispatchInfo [protected] |
Definition at line 92 of file btCollisionWorld.h.
Referenced by btCollisionWorld(), and getDispatchInfo().
bool btCollisionWorld::m_forceUpdateAllAabbs [protected] |
m_forceUpdateAllAabbs can be set to false as an optimization to only update active object AABBs it is true by default, because it is error-prone (setting the position of static objects wouldn't update their AABB)
Definition at line 102 of file btCollisionWorld.h.
Referenced by getForceUpdateAllAabbs(), setForceUpdateAllAabbs(), and updateAabbs().
btStackAlloc* btCollisionWorld::m_stackAlloc [protected] |
Definition at line 94 of file btCollisionWorld.h.
Referenced by btCollisionWorld(), btDiscreteDynamicsWorld::solveConstraints(), and btSimpleDynamicsWorld::stepSimulation().