In my application i need to modify the collision filter infos of my rigid bodies during the execution. To do that I remove the rigid body from the simulation and add it back with the modified group and mask. The problem happens when the body's activation state is "ISLAND_SLEEPING". In fact, removing an object from a sleeping island will not activate the other bodies in the island.
To reproduce the issue in the basic demo just create two boxes and wait until they sleep, then, remove the bottom box from the simulation. You should see the top box floating in the air.
I thought about using a custom callback :
Code: Select all
m_broadphase->setOverlappingPairUserCallback(m_customPairCallback);
If anyone have already experienced that and managed to solve it, I would appreciate his help.
Cheers,
M. Colleaux
PS: I'm using Bullet 2.74