17 #ifndef BT_COMPOUND_COLLISION_ALGORITHM_H
18 #define BT_COMPOUND_COLLISION_ALGORITHM_H
99 #endif //BT_COMPOUND_COLLISION_ALGORITHM_H
btPersistentManifold is a contact point cache, it stays persistent as long as objects are overlapping...
void removeChildAlgorithms()
btCollisionAlgorithm * getChildAlgorithm(int n) const
virtual ~btCompoundCollisionAlgorithm()
btShapePairCallback gCompoundChildShapePairCallback
class btPersistentManifold * m_sharedManifold
This class is not enabled yet (work-in-progress) to more aggressively activate objects.
The btCollisionShape class provides an interface for collision shapes that can be shared among btColl...
btCompoundCollisionAlgorithm(const btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, bool isSwapped)
int m_compoundShapeRevision
btManifoldResult is a helper class to manage contact results.
virtual btCollisionAlgorithm * CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap)
btAlignedObjectArray< btCollisionAlgorithm * > m_childCollisionAlgorithms
virtual void processCollision(const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
int size() const
return the number of elements in the array
virtual void * allocateCollisionAlgorithm(int size)=0
bool(* btShapePairCallback)(const btCollisionShape *pShape0, const btCollisionShape *pShape1)
virtual btCollisionAlgorithm * CreateCollisionAlgorithm(btCollisionAlgorithmConstructionInfo &ci, const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap)
Used by the btCollisionDispatcher to register and create instances for btCollisionAlgorithm.
btCollisionObject can be used to manage collision detection objects.
btCompoundCollisionAlgorithm supports collision between CompoundCollisionShapes and other collision s...
void preallocateChildAlgorithms(const btCollisionObjectWrapper *body0Wrap, const btCollisionObjectWrapper *body1Wrap)
virtual void getAllContactManifolds(btManifoldArray &manifoldArray)
btDispatcher * m_dispatcher1
The btDispatcher interface class can be used in combination with broadphase to dispatch calculations ...
btCollisionAlgorithm is an collision interface that is compatible with the Broadphase and btDispatche...
btScalar calculateTimeOfImpact(btCollisionObject *body0, btCollisionObject *body1, const btDispatcherInfo &dispatchInfo, btManifoldResult *resultOut)
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...