Warning: this project is discontinued to be rewritten in Haskell. See https://github.com/sebcrozet/falling2d.
Falling2d is a basic 2D physics engine aimed to be used in game. Since it is still under development, it should not be used by anyone for now. If you are hopelessly searching for a new physics engine to try out, follow the following Compilation guidelines.
#Compilation The code should be portable but has been tested under ArchLinux only for now.
The demo application requires:
sfml2.0 RC
- http://www.sfml-dev.org/download.phpcmake
$ git clone git://github.com/sebcrozet/falling2d.git
$ cd falling2d
$ sh cmake_release.sh
$ ./bin/Release/falling_demo
#Algorithms involved
- Sweep & Prune detector (and thus, AABBs) using space/time coherency
- OBB tree on non-convex polygon (one OBB by polygon on its convex decomposition)
- GJK-hybrid for collision detection & light penetrations
- EPA for bigger penetrations
- Impulse based
- Projected Gauss-Seidel LCP solver
- Islands
- Object/Island sleeping
- Handles any polygons (convex, concave, crossed)