16 #ifndef BT_SIMULATION_ISLAND_MANAGER_MT_H 17 #define BT_SIMULATION_ISLAND_MANAGER_MT_H 112 #endif //BT_SIMULATION_ISLAND_MANAGER_H virtual Island * allocateIsland(int id, int numBodies)
virtual void initIslandPools()
btConstraintSolver * m_solverMt
void setIslandDispatchFunction(IslandDispatchFunc func)
Island * getIsland(int id)
btConstraintSolver * m_solverPool
btAlignedObjectArray< btPersistentManifold * > manifoldArray
btAlignedObjectArray< Island * > m_freeIslands
void append(const Island &other)
The btAlignedObjectArray template class uses a subset of the stl::vector interface for its methods It...
btAlignedObjectArray< Island * > m_lookupIslandFromId
btContactSolverInfo * m_solverInfo
SimulationIslandManager creates and handles simulation islands, using btUnionFind.
btDispatcher * m_dispatcher
virtual void addBodiesToIslands(btCollisionWorld *collisionWorld)
virtual ~btSimulationIslandManagerMt()
static void parallelIslandDispatch(btAlignedObjectArray< Island *> *islandsPtr, const SolverParams &solverParams)
btAlignedObjectArray< Island * > m_activeIslands
int m_minimumSolverBatchSize
btAlignedObjectArray< Island * > m_allocatedIslands
static void serialIslandDispatch(btAlignedObjectArray< Island *> *islandsPtr, const SolverParams &solverParams)
int getMinimumSolverBatchSize() const
The btIDebugDraw interface class allows hooking up a debug renderer to visually debug simulations...
int m_batchIslandMinBodyCount
btAlignedObjectArray< btTypedConstraint * > constraintArray
static void solveIsland(btConstraintSolver *solver, Island &island, const SolverParams &solverParams)
btIDebugDraw * m_debugDrawer
CollisionWorld is interface and container for the collision detection.
virtual void mergeIslands()
btSimulationIslandManagerMt()
virtual void addConstraintsToIslands(btAlignedObjectArray< btTypedConstraint *> &constraints)
TypedConstraint is the baseclass for Bullet constraints and vehicles.
void setMinimumSolverBatchSize(int sz)
virtual void buildAndProcessIslands(btDispatcher *dispatcher, btCollisionWorld *collisionWorld, btAlignedObjectArray< btTypedConstraint *> &constraints, const SolverParams &solverParams)
virtual void buildIslands(btDispatcher *dispatcher, btCollisionWorld *colWorld)
btAlignedObjectArray< btCollisionObject * > bodyArray
IslandDispatchFunc m_islandDispatch
The btDispatcher interface class can be used in combination with broadphase to dispatch calculations ...
IslandDispatchFunc getIslandDispatchFunction() const
virtual void addManifoldsToIslands(btDispatcher *dispatcher)
void(* IslandDispatchFunc)(btAlignedObjectArray< Island *> *islands, const SolverParams &solverParams)
SimulationIslandManagerMt – Multithread capable version of SimulationIslandManager Splits the world ...