If you are using the Distance Grid
narrow phase collider (it is default) you are right. The old grid is kept and that can cause ghost collisions. Since we support multiple narrow phase algorithms it is hard to make an easy interface to recalculate the grid. You will have to do this manually
for the time being.
The narrow phase algorithms are in singleton based form, so only one instance is defined. You can call DistanceGrid.Instance at any point in time and you will have access to all the previously created distance grids. You can also create new grids and remove
old onces. I suggest you do the following:
1. You have the original geometry, you blow up a chunk of it and end up with a new vertices set.
2. Remove the old distance grid (cleanup to minimize memory usage) using DistanceGrid.Instance.RemoveDistanceGrid(Geom)
3. Create a new one using DistanceGrid.Instance.CreateDistanceGrid(Geom)
Then you should have a new distance grid defined for the old geometry. Distance grids can take some time to calculate, this can be minimized by adjusting the geom.GridCellSize property. Normally the GridCellSize is calculated automatically (and thus it can
be wrong) unless you define something yourself.
An alternative is to use the SAT narrow phase algorithm. It does not have to pre-calculate anything and is really more suited for worms-like games. We have had some bugs with the algorithm tho and a new one is in the works (bugs fixed and better performance).
Try it out and see if it works for you.