Bullet
Overview[edit]
Bullet is a professional open source multi-threaded 3D Collision Detection and Rigid Body Dynamics Library written in C++. It is free for commercial use under the zlib license.
Installation[edit]
A cabalised wrapper is available: http://hackage.haskell.org/package/bullet
The source repository is on github: https://github.com/csabahruska/bullet
Note that you have to install the library before installing the package:
svn checkout http://bullet.googlecode.com/svn/trunk/@2440 bullet-read-only-2.79 cd bullet-read-only-2.79 cmake . -DBUILD_DEMOS=NO (on OSX for 32 bit GHC also add -DCMAKE_OSX_ARCHITECTURES='i386') make sudo make install
Now you can install the Haskell binding:
cabal install bullet
Todo[edit]
- vehicle interface
- constraints
- soft body system
OpenGL example[edit]
The example on the screenshot below can be found in the package. You have to compile it by hand. Make sure that OpenGL and GLUT is installed, then enjoy:
cabal unpack bullet cd bullet-x.x.x/Examples ghc --make -O2 BulletExample ./BulletExample
You can use the arrows to navigate the scene and P to pause/unpause.
Combining LambdaCube and Bullet[edit]
Hackage contains an example for combining LambdaCube and Bullet: lambdacube-bullet