In Chapter 11, Advanced Programming Techniques, you learned about 2D physics using Box2D. Now, we will enter the next dimension: 3D physics using the Bullet Physics engine. Bullet Physics itself is a huge topic, so, this chapter will focus on providing you with a basic idea about the 3D physics engine. Later, we will create a physics simulation using basic shapes.
In this chapter, we will cover the following topics:
gdx-setup.jar
Bullet is a 3D collision detection and rigid body dynamics library. It has been used in many Hollywood movies such as Megamind, Shrek 4, and How To Train Your Dragon, and popular games such as the Grand Theft Auto series. The Bullet Physics library was originally created by Erwin Coumans. Since 2005, the Bullet project has been open source with many other contributors as well. The Bullet library is published under the zlib
license. It is written in C++ and has been ported to several frameworks and programming languages.
LibGDX integrates Bullet through a thin wrapper API. The wrapper tends to follow the original Bullet class names, which means that most classes are prefixed with bt
as in the original library. This approach makes it easier to understand and transfer existing knowledge about Bullet by following tutorials and manuals that are not based on LibGDX. You can also use the official Bullet user manual and API documentation.
For more documentation related to the Bullet Physics engine, visit: