Chipmunk Physics Engine

Fast and lightweight 2D rigid body physics library in C
August 9th, 2010: Chipmunk 5.3.0 Released!
Donate:
Hundreds of hours have been put into making Chipmunk what it is today. If Chipmunk has worked well for you, please consider donating to help support further development! We at Howling Moon software like to know our hard work is appreciated. If you use Objective-C, please consider using our Objective Chipmunk binding and utility library.
New Features:
- Inactive bodies can be put to sleep for major CPU savings
- Improvements to the solver around elastic collisions
- Memory allocation strategy improved for major performance gains
- Builds more easily for various platforms, including iOS 4.0
- Several bug fixes
- (See the included readme for detailed changes)
Features:
- Designed with 2D video games in mind
- Circle, convex polygon, and beveled line segment collision primitives
- Multiple collision primitives can be attached to a single rigid body
- Fast broad phase collision detection by using a spatial hash
- Extremely fast impulse solving by utilizing Erin Catto's contact persistence algorithm
- Support for collision callbacks based on user definable object types
- Flexible collision detection system with layers, exclusion groups and callbacks
- Impulses applied to contact points can be retrieved after the impulse solver has finished for gameplay effects
- Several kinds of joints available(a generic and extendable constraint programming interface coming soon)
- Lightweight C99 implementation with no external dependencies
- Many language bindings available
- Simple, read the documentation
- Unrestrictive MIT license
- Makes you smarter, stronger and more attractive to the opposite gender!
