In DetailPhysics simulation is an integral part of almost all game development projects as it is essential to the rules and feel of the game (gameplay) regardless of the project’s scale. Bullet is a 3D Collision Detection and Rigid Body Dynamics Library for games, and special effects for film and animations. Bullet is integrated into many 3D modelers including Maya, Houdini, Cinema 4D, LightWave, and Blender. It is free for commercial use and open source under the permissive ZLib License.
A comprehensive guide to start building games with the Bullet Physics library. Learn how modern physics engines work by implementing key features such as collision event systems, user input handling, and simulation of soft bodies. Then learn to control it all with forces, constraints, and robust object management. This book will reveal what’s going on under the hood of two modern and feature-rich graphics and physics APIs; OpenGL and Bullet Physics.
This book begins by teaching you to write your first OpenGL application, and then dives in to exploring the many features of the Bullet library in a straightforward manner. Each new feature expands upon the last, teaching you more about how physics is simulated in a video game, and how Bullet gives you the power to control every aspect of your simulation. You will learn how to render simple and complex shapes, apply some basic lighting, and construct a simple yet robust rendering system. From here, you will pull back the veil to see what’s going on underneath Bullet Physics, and learn to implement key game logic features through this widely-used and extensive physics library. After you finish this book, you’ll be armed with a wealth of knowledge to tackle the more advanced aspects of game graphics and physics going forward.
ApproachA comprehensive set of straight-forward, easy-to-follow tutorials in OpenGL and Bullet Physics that will teach you how modern game physics and 3D graphics work.
Who this book is forIf you're a beginner or intermediate programmer with a basic understanding of 3D mathematics, and you want a stronger foundation in 3D graphics and physics, then this book is perfect for you! You'll even learn some of the fundamental concepts in 3D mathematics and software design that lies beneath them both, discovering some techniques and tricks in graphics and physics that you can use in any game development project.
Usually when you start using a new library specially the open source ones you have to go through all the documentation, which can be a little harsh if it is your first approach to that library, this book helps get a primer to Bullet physics which is a really powerful physics simulation library and free to use.
I must warn you this is NOT a Tutorial, code along book, in the book you will see mostly theory of how the code works and you will have to read the book along the source code which is given within the book in order to have a clear understanding of what is going on.
In my opinion the best way to work around this book is to read both source code and book, and then implement it in your own code.
Although it covers all the basics of bullet Physics it does miss a lot of important points, which as the book itself states. They are out of the scope of this writing , anyways It does teach enough for you to start "playing" around with this library and go further.
In resume, it´s a great book for the folks who already have solid experience with OGL and know at least the basics of Physics simulation, if you are just beginning coding you should just keep walking.
Tl;dr if you just want an introduction to using the bullet physics library this will work for you, but the 'and OpenGL' part of the book is less useful.
This was a pretty good introduction to the bullet physics library, but I wish it had covered a few more concepts in-depth, like rigid non-convex collision shapes or simulation values like friction and gravity. The rendering code is also pretty outdated and the tutorials use visual studio without any cross-platform options, so all in all I wouldn't recommend this as a general-purpose introduction to graphical programming. Also, while there's a lot of good information about getting a general-purpose physics simulation up and running, there's almost nothing about how to make the simulation behave believably. The default values tend to make it look like everything is made of bouncy rubber sliding around on ice, so it would have been nice to get some discussion on how to configure that sort of thing.
But the physics information is good, and the tutorials are organized very well; each new one builds on the last, and clearly indicates what has changed since the last chapter with 'ADD'/'REMOVE' comments. So if you have your own workflow and/or graphics code you can still easily follow along with the physics concepts, although some examples like ray casting or debug drawing will need a little tweaking.
The book assumes a solid grasp of C++, but really you just need to know about basic syntax, pointers, and inheritance. I'd also recommend learning a bit about 3D rendering first, though; you'll probably get more out of this book if you use your own rendering code based around a more modern version of OpenGL or DirectX.
For anyone interested in the physics of the bullet, extremely helpful, and very well documented. Facing OpenGL which I consider one of the best libs for everyone interested in Computer Graphics.
Not a book for beginners, it is a book for advanced users who already know the basic and intermediate principles on OpenGL. In some moments I can get a bit heavy reading, I recommend pausing to analyze what I read each chapter and put it into practice. You will need to make coding to understand what they read.
Not is a large book to read, but is very deep. It is a book very updated, and a few of my favorites for this year.
It's an excellent book, I'm waiting a lot this kind of book, this kind of book helps me a lot in my research, I recommend it to all my students of Computer Graphics.