Bullet is a free and open source 3D Game Multiphysics Library that will provide game developers with state of the art collision detection, soft body and rigid body dynamics.
NOTE: The Library is Open Source and free for commercial use, under the ZLib license. This means you can use it in commercial games, even on next-generation consoles like Sony Playstation 3.
Here are some key features of "Bullet":
· Used by many game companies in AAA titles on Playstation 3, XBox 360, Nintendo Wii and PC
· Modular extendible C++ design with hot-swap of most components
· Optimized back-ends with multi-threaded support for Playstation 3 Cell SPU and other platforms
· Discrete and continuous collision detection (CCD)
· Swept collision queries
· Ray casting with custom collision filtering
· Generic convex support (using GJK), capsule, cylinder, cone, sphere, box and non-convex triangle meshes.
· Rigid body dynamics including constraint solvers, generic constraints, ragdolls, hinge, ball-socket
· Support for constraint limits and motors
· Soft body support including cloth, rope and deformable
· Bullet is integrated into Blender 3D and provides a Maya Plugin
· Supports import and export into COLLADA 1.4 Physics format
· Support for dynamic deformation of non-convex triangle meshes, by refitting the acceleration structures
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
Discrete Collision Detection for Rigid Body Simulation:
· Persistent Manifold, with contact point reduction
· Collision Results can also be used for AI/Triggers/Character Control
· GJK based general convex collision detection
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)
Documentation and Support:
· Auto generation of MSVC project files, comes with Jam build system
· Doxygen commented Source documentation
· Modular design: either use all, or just parts of the software
· Feedback, support, Physics discussion forum
· Bullet Collision Detection works with Bullet Dynamics, but there is also a sample integration with Open Dynamics Engine.
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
Extra Features:
· Collada 1.4 Physics Import using FCollada and COLLADA-DOM
· Convex Decomposition Code
What`s New in This Release: [ read full changelog ]
· support for the .bullet binary file format
· btInternalEdgeUtility to adjust unwanted collisions against internal triangle edges
· Improved Maya Dynamica plugin with better constraint authoring and .bullet file export