16#ifndef BT_SIMULATION_ISLAND_MANAGER_H
17#define BT_SIMULATION_ISLAND_MANAGER_H
btCollisionObject can be used to manage collision detection objects.
CollisionWorld is interface and container for the collision detection.
The btDispatcher interface class can be used in combination with broadphase to dispatch calculations ...
btPersistentManifold is a contact point cache, it stays persistent as long as objects are overlapping...
SimulationIslandManager creates and handles simulation islands, using btUnionFind.
virtual void storeIslandActivationState(btCollisionWorld *world)
void findUnions(btDispatcher *dispatcher, btCollisionWorld *colWorld)
void processIslands(btDispatcher *dispatcher, btCollisionWorld *collisionWorld, IslandCallback *callback)
virtual void updateActivationState(btCollisionWorld *colWorld, btDispatcher *dispatcher)
void setSplitIslands(bool doSplitIslands)
btAlignedObjectArray< btCollisionObject * > m_islandBodies
void buildAndProcessIslands(btDispatcher *dispatcher, btCollisionWorld *collisionWorld, IslandCallback *callback)
btUnionFind & getUnionFind()
void initUnionFind(int n)
btAlignedObjectArray< btPersistentManifold * > m_islandmanifold
btSimulationIslandManager()
void buildIslands(btDispatcher *dispatcher, btCollisionWorld *colWorld)
virtual ~btSimulationIslandManager()
UnionFind calculates connected subsets.
virtual void processIsland(btCollisionObject **bodies, int numBodies, class btPersistentManifold **manifolds, int numManifolds, int islandId)=0
virtual ~IslandCallback()