As well as resetting the broadphase pool, I also clean out the overlapping pair cache:
Code:
btOverlappingPairCache* pair_cache = m_dynamics_world->getBroadphase()->getOverlappingPairCache();
btBroadphasePairArray& pair_array = pair_cache->getOverlappingPairArray();
for(int i = 0; i < pair_array.size(); i++)
pair_cache->cleanOverlappingPair(pair_array[i], m_dynamics_world->getDispatcher());
If you are using softbodies with the SDF based rigid versus softbody collision method, then also reset that:
Code:
softbody_worldinfo.m_sparsesdf.Reset();
---JvdL---