Skip to main content

History: OgreBullet

Source of version: 22 (current)

Copy to clipboard
            {DIV(class="achtung")}__IMPORTANT:__ OgreBullet is outdated, for new projects rather use [https://github.com/OGRECave/btogre|btogre].{DIV}

{TRANSCLUDE(page="ogregallery",
name="OgreBullet",
caption="Bullet physics wrapper for Ogre",
licence="MIT",
status="dormant but reviving?",
dependencies="Ogre 1.4+, Bullet Physics Engine",
support="[http://www.ogre3d.org/addonforums/viewforum.php?f=12|OgreBullet Forum]",
developer=[http://www.ogre3d.org/addonforums/memberlist.php?mode=viewprofile&u=5023|Tuan Kuranes] <small>(maintainer)</small> and [http://www.ogre3d.org/addonforums/memberlist.php?mode=viewprofile&u=5960|Chaster],
date="23-Apr-2007")}{TRANSCLUDE}

{DIV(class="clearRight")}{IMG(src="img/wiki_up/OgreBulletDemos_1.jpg",thumb="y",rel="box[g]",width="250",stylebox="border",desc="Boxes flying and colliding in Ogre Bullet Demo",title="Boxes flying and colliding in Ogre Bullet Demo")}{IMG}
{IMG(src="img/wiki_up/OgreBulletDemos_2.jpg",thumb="y",rel="box[g]",width="250",stylebox="border",desc="Vehicle from the same demo",title="Vehicle from the same demo")}{IMG}{DIV}

OgreBullet is a wrapper, which allows you to easily integrate Bullet Physics Engine into your project. Bullet is available [http://www.bulletphysics.com/Bullet/|here]
Currently the wrapper supports nearly all Bullet 2.64 features.

__What is Bullet?__
Bullet is a 3D Collision Detection and Rigid Body Dynamics Library for games and animation. 
Free for commercial use, including PlayStation 3, Open Source multiplatform C++ under the ZLib License. 
Discrete and continuous collision detection, integrated into Blender 3D and COLLADA 1.4 Physics tools support.

Just some of the features:

__Multi Platform support:__ 
Playstation 3, XBox 360, Wii, Win32, Linux, Mac OSX etc. 
Parallel optimizations for Cell SPU, multi-core 
Fully Open Source, ZLib license (free for commercial use) 
Used by several professional game companies in AAA titles on Playstation 3, XBox 360, Wii and PC.

__Supports various shape types:__ 
Convex Polyhedron, Box, Sphere, Cone, Cylinder, Capsule, Static Triangle Mesh, Heightfield.

__Single Queries:__ 
Closest Point/Normal/Distance 
Penetration Depth estimation 
Ray Cast 
Linear Cast / Swept Collision Test 
Experimental Continuous Collision Detection/Time of Impact (incl. Rotation)

__Optimizations:__ 
Sweep and Prune Broadphase 
Bounding Volume Hierarchy for Static Triangle Mesh (AABB tree) 
Allows re-use of graphics mesh, instead of duplicating (using index/stride)

__Dynamics Features:__ 
Framework with 2 different Constraint Solvers 
Sequential Impulse 
Projected Gauss Siedel (quickstep) 
Hinge, Point to Point Constraint, Twist Cone Constraint (ragdolls) 
Automatic de-activation (sleeping) 
Generic 6 Degree of Freedom Constraint , Motors, Limits 
LCP Warm starting of contact points

And [http://www.bulletphysics.com/mediawiki-1.5.8/index.php?title=Features|more...]

__You can always find help and advice at the official OgreBullet [http://www.ogre3d.org/addonforums/viewforum.php?f=12|forums].__

[http://www.ogre3d.org/addonforums/memberlist.php?mode=viewprofile&u=16465|Alexey Knyshev] has a [http://bitbucket.org/alexeyknyshev/ogrebullet|Bitbucket repository of OgreBullet] that builds with CMake and Bullet 2.81.  The original code is in the Ogre Addons repository.  See the OgreBullet forum for details.

Don't forget to visit [http://www.bulletphysics.com/Bullet/phpBB3/|Bullet forums] full of ideas, help and advise. Also, official wiki, manual and doxygen API are also there!

~tc~
!!OgreBullet Tutorials
{toc order=asc shownum=0 maxdepth=1 showdesc=1 type="fancy"}
~/tc~

!!Ubuntu/Debian packages
SonSilentSea (by user [http://www.ogre3d.org/addonforums/memberlist.php?mode=viewprofile&u=13900|SanguinarioJoe]) Launchpad repository contains packages for Debian users (Ubuntu/Debian Natty Narwhal or Debian squeeze).
__Ubuntu__
Simply execute:

{CODE(wrap="1", colors="bash")}sudo apt-add-repository ppa:sonsilentsea-team/sonsilentsea
sudo apt-get update
sudo apt-get install libogrebullet-dev{CODE}
__Debian__
As super user, add this lines to /etc/apt/sources.list:
{CODE(wrap="1", colors="bash")}# SonSilentSea
deb http://ppa.launchpad.net/sonsilentsea-team/sonsilentsea/ubuntu natty main 
deb-src http://ppa.launchpad.net/sonsilentsea-team/sonsilentsea/ubuntu natty main{CODE}
Then execute this commands
{CODE(wrap="1", colors="bash")}apt-get update
apt-get install libogrebullet-dev{CODE}