Chipmunk2D is a 2-dimensional
real-time
Real-time or real time describes various operations in computing or other processes that must guarantee response times within a specified time (deadline), usually a relatively short time. A real-time process is generally one that happens in defined ...
rigid body physics engine written by Scott Lembcke that is designed to be portable, lightweight, fast, and easy to use. Prior to version 7, two main versions of the library existed. ''Chipmunk2D Free'' was written purely in
C99
C99 (previously known as C9X) is an informal name for ISO/IEC 9899:1999, a past version of the C programming language standard. It extends the previous version ( C90) with new features for the language and the standard library, and helps impl ...
, and freely available under the terms of the
MIT License. ''Chipmunk2D Pro'' was a proprietary upgrade designed for development on mobile devices. It included several high-level subroutines in
Objective-C, and floating-point optimizations for the
ARM processor. However, after version 7 the project was fully open-sourced.
Aside from Objective-C, there are official bindings for
Ruby
A ruby is a pinkish red to blood-red colored gemstone, a variety of the mineral corundum ( aluminium oxide). Ruby is one of the most popular traditional jewelry gems and is very durable. Other varieties of gem-quality corundum are called sa ...
, and third party interfaces exist for
Python
Python may refer to:
Snakes
* Pythonidae, a family of nonvenomous snakes found in Africa, Asia, and Australia
** ''Python'' (genus), a genus of Pythonidae found in Africa and Asia
* Python (mythology), a mythical serpent
Computing
* Python (pro ...
,
Haskell,
OCaml
OCaml ( , formerly Objective Caml) is a general-purpose programming language, general-purpose, multi-paradigm programming language which extends the Caml dialect of ML (programming language), ML with object-oriented programming, object-oriented ...
, and others. Chipmunk is endorsed by a number of game libraries, includin
Aerosol Gosu
Gosu (고수) is a Korean term used to refer to a highly skilled person. In computer gaming the term is usually used to refer to a person who dominated games like ''StarCraft'', ''Counter-Strike'', Tekken, ''Warcraft III'', ''Diablo II
''D ...
, and
Cocos2d.
Features
Chipmunk supports multiple collision primitives attached to one rigid body, and bodies may be joined by constraints. It has a flexible
collision detection system with layers, exclusion groups and collision callbacks. Callbacks are defined based on user definable "collision types" and may reject collisions and even override the calculation of friction and elasticity coefficients.
Version 7 of the library introduced "Autogeometry", an
image tracing feature that transforms a raster graphic into a polygonal shape usable by the library. This feature is currently only available in the
Objective-C version of the library.
Chipmunk has been widely used on the
iPhone, Mac/Windows/Linux, and other platforms, including
Nintendo Wii and
Sony PSP.
"Chipmunk Physics ported to the PSP"
/ref>
See also
* Box2D
References
External links
*
Chipmunk Forums
Chipmunks Ruby Bindings
with more functionality wrapped.
chipmunk-ffi
a more up-to-date Ruby interface using Nice-FFI.
Demos of Chipmunk on YouTube
{{DEFAULTSORT:Chipmunk Physics Engine
Computer physics engines
Free computer libraries
Software using the MIT license