Introduction
I am pleased to announce our biggest release yet:
Farseer Physics Engine 3.2 - Might contain traces of peanut butterIt contains support for about every .NET enabled platform imaginable: Vanilia .NET, Xbox360, Windows Phone 7, Silverlight, WPF, XNA and more. I would like to thank all the contributors for their patches and help on the forums. It is really appreciated and your continued support is what keeps this project running.
New features
- New features in XNA debug view
- Restructured debug panel
- New performance graph
- New edge collider code
- Brings features like edge adjacency
- New triangulation algorithms
- Constrained Delaunay triangulation algorithm (From Poly2Tri)
- Seidel triangulation algorithm (From Poly2Tri)
- Added fixed version of the FrictionJoint
- Major updates to the samples
- They now features a camera that support zooming, rotating and translation.
- New textures that works with the DebugView
- Shows you how easy it is to scale between the MKS system and pixels.
- New option in Settings: UseFPECollisionCategories
- Use the switch to enable FPE or Box2D collision categories behavior
- New PhysicsLogic framework
- Has an extensive filtering system using collision categories
- Breakable joints
- Set Joint.Breakpoint to a value of your choice.
- New VelocityLimitController
- Use World.TestPoint to check if the specified point is inside any of the fixtures in the world.
- Lock free World
- Add and remove physics objects during callbacks
- Heavy micro-optimizations
- Increased performance with up to 44% on PC and 61% on Xbox360
- New graphics system in samples framework
- Textured boxes, nice menu system and more.
- Lots and lots of bug fixes
Breaking changes
- Collision filtering stuff has been moved to Fixture.CollisionFilter
- Adding and removing bodies and joints are no longer instant. Call World.ProcessChanges() to process changes immediately.
- Body.Active is now Body.Enabled.
- BeginContact delegate now expects a boolean return value.
- Join anchors have been refactored. You might get unexpected results depending on the type of joint.
- Removed PolygonShape.Centroid - Use PolygonShape.MassData.Centroid instead
- World.CreateBody() is now World.AddBody(Body). Instanciating new bodies like this: "Body b = new Body(World)" will add it to the world.
- FixtureFactory.CreateEdge() now creates and edge shape instead of a polygon shape with 2 vertices.
Notes
Controls for all samplesUse the mouse to drag things around.
Testbed controlsI - Previous test
O - Next test
P - Pause
R - Reset
F1 - F8 - Debug controls.
Hello World controlsA - Rotate left
D - Rotate right
Known issues
- Not all samples have the ability to be controlled.
- Hello World sample does not sleep correctly on Xbox360
Support us
If you liked this release and would like to keep this project going. Please consider
donating to our project.