Bullet is an open-source physics engine which features 3D collision detection for soft and rigid body dynamics. It is relevant because it is integrated to many 3D modelers such as Maya and Blender. In addition, it is used in video games and in visual effects in movies.
Learning Game Physics with Bullet Physics and OpenGL, attempts to be a reference when it comes to implementing the Bullet physics engine using OpenGL. Physics simulation is a daunting topic, technically and theoretically, and bullet aims to aid the aspects involved in this type of development.
The book targets beginner and intermediate programmers with a basic understanding of linear algebra. It does a great job building up from the setup of a simple OpenGL application (using FreeGLUT) to the actual implementation of the physics engine. It is written as if every chapter is a self-contained tutorial.
I liked the pace and the way the author described every little aspect of how things work under the hood. However, the OpenGL rendering examples are done using the old fixed-pipeline and I would have wished to see the examples using the programmable one.
Learning Game Physics with Bullet Physics and OpenGL is a great introductory book for game developers who are looking to jump into soft and rigid body dynamics implementations and would like to have a sandbox before implementing their own.
If you are starting out with game development and would like to build a sandbox to understand the underlying theory behind soft and rigid body dynamics you should grab a copy.
If you have any further comments about this book or have suggestions about other books covering this topic please share them on the comments down below.