[ODE] solving penetrations "statically"
alenl-ml at croteam.com
Fri Jun 9 02:17:07 MST 2006
> The main problem I find with the ODE solver is, as you have stated, the
> correction velocity adds momentum. The most obvious example is this:
> Drop a sphere with bounce 0 from a large height. It will still bounce.
> Worse, the bounce varies depending on how much interpentration occurs at
> the end of the time-step. The joint code shows this very clearly:
> target_vel = max(bounce, correcting_vel). It can be minimised, but only
> by slowing down how much objects are pushed apart, so its a trade-off.
Actually, just putting a clamp to the correcting_vel with a max of
like 1m/s will make the unwanted bounces disappear for any practical
purpose. With a welcome side-effect that it will further increase the
stability of the system.
More information about the ODE