bevy_xpbd
bevy_xpbd copied to clipboard
Replace XPBD joint solver
Not sure how necessary this is, but there is still some amount of uncertainty regarding the patent. As an intermediate step, we could feature-gate joints so that users have the option of using only the non-XPBD parts of Avian.
This is not "done" yet, but #803 does the intermediate step of feature-gating the XPBD part of the solver behind the xpbd_joints feature. The joint APIs themselves are still available without it, so someone could implement some other joint solver for it without touching the API.
The plan is still to replace the built-in joint solver though, most likely with an impulse-based solver (I have this about halfway done). AVBD is another option I'm exploring, though in my testing it has certain stability issues and tuning problems, and it might be tricky to have it working properly alongside our impulse-based contact solver; we'll see.