https://github.com/AndrejMitrovic/dchip
What is Chipmunk2D? =================== Chipmunk2D[1] is a 2D rigid body physics library distributed under the MIT license. It is intended to be blazingly fast, portable, numerically stable, and easy to use. It’s been used in hundreds of games across just about every system you can name. This includes top quality titles such as Night Sky for the Wii and many #1 sellers on the iPhone App Store. Chipmunk2D is platform-independent and has no dependencies, other than for its test-suite which requires the GLFW library. [1] : http://chipmunk-physics.net/release/ChipmunkLatest-Docs/ What is DChip? ============== DChip[1] is a direct D2 port of the C library without no API changes. This ensures the documentation and tutorials for Chipmunk2D can be used with DChip with very little to no changes in code. See more information and building instructions at its github[1] page. Note: There was a previous effort at porting the Chipmunk2D library to D called Chipmunkd[2], which was implemented by Stephan Dilly. Chipmunkd targets an older v5.3.5 version of Chipmunk2D and can be found at its bitbucket[2] page. [1] : https://github.com/AndrejMitrovic/dchip [2] : https://bitbucket.org/Extrawurst/chipmunkd DChip targets the latest Chipmunk2D version (currently v6.2.1) and includes its GLFW-based test-suite which was ported to D. Why a port and not a binding? ============================= There are a number of reasons why a port was made and why it can be beneficial: - The C library is relatively small, clocking in at about ~11.000 lines, + ~8.000 lines of test-suite code. - With a port there's no need to worry about exception propagation across language barriers. - Less dependencies on external binaries or the requirement to build C code with another compiler. - Potential inlining opportunity. - A physics library could be a good test to benchmark the various D compilers. - The D codebase can serve as starter code for someone wanting to implement their own physics library in D. The permissive MIT license allows anyone to use the code for whichever purpose they may have. https://github.com/AndrejMitrovic/dchip
