This project has moved. For the latest updates, please go here.

Differences between Farseer Physics Engine 2.x and 3.0

Perfect circles
In FPE 2.x we approximated circles using polygons. This lead to unexpected results when the circles bounced off a wall and uneven rolling on a floor. This is no longer an issue in FPE 3.0 as we now have perfect circles.

In 3.0 we have broadphase enabled raycasting. This means you can raycast very quickly against a large number of bodies and get very precise results back.

Real sleeping
In FPE 2.x we had the Inactivity Controller to control sleeping bodies. It was implemented outside the engine and thus it was not very good. In 3.0 we have sleeping implemented directly into the engine, i.e, the sleeping system is a lot better. Sleeping is enabled by default and when used correctly, it can improve performance a lot.

More realistic joints
The joints are solved using a very sophisticated solver that creates more realistic results.

Better stacking
The contact solver is also a lot better and it is possible to stack a large number of bodies.

Warmstarting makes the engine approximate results faster and more accurate. It improves stacking and performance.

Continuous Collision Detection (CCD)
Fast moving objects can tunnel other objects - a big problem in a lot of games. With FPE 3.0 we have a CCD system that is enabled on static bodies by default, and can be enabled for other bodies if needed.

Last edited Oct 23, 2010 at 10:13 PM by Genbox, version 5


No comments yet.