I have a minecraft-style block world with a MeshCollisionShape and am testing out physics with it by dropping a ball with a SphereCollisionShape on it. It works as it should and the ball collides with the terrain. However, if I delete the block under it once the ball comes to rest, it remains suspended in midair. The MeshCollisionShape is updated whenever the terrain is modified. This happens correctly according to the physicsSpace.enableDebug() wireframe. I know the CollisionShapes are updating properly because if the ball is already rolling, it responds properly to deleting the block under it.
I tried using ballControl.activate() in prePhysicsTick() when I update the terrain, but the ball remains suspended even if ballControl.isActive() returns true (ballControl is a RigidBodyControl). If instead of using ballControl.activate(), I apply an impulse in the Y direction, it behaves properly; but, if the impulse is small (e.g. 0.5f instead of 1.0f), the ball jumps up slightly and lands back in its floating position. When the ball is re-dropped, it always behaves correctly on the new terrain.
Any suggestions on how to force the ball to fall without making it bounce when a block is deleted?