Chapter 14. Physics Engines

A physics engine is the part of your game that contains all the code required for whatever you’re trying to simulate using physics-based techniques. For many game programmers, a physics engine is a real-time, rigid-body simulator such as the sort we’ve discussed earlier in this book. The open source and licensable physics engines available to you are typically of the rigid-body-simulator variety. Some physics engines are rather generic and are useful for general rigid bodies and particles; others include various connectors and constraints, enabling ragdoll simulation. Still others focus on soft bodies and fluids. Fewer actually focus on the physics of some specific thing, like a car or a boat. A simple Internet search on the phrase “game physics engine” will generate many links to potential options for your use. That said, you could always write your own physics engine.

Building Your Own Physics Engine

We’re advocates of using physics where you need it. Sure, you can write a general-purpose physics engine for a game, but if you’re creating a game that doesn’t require a general-purpose physics engine, then don’t write one. That may sound obvious, but sometimes we are compelled to do more than what we need just so we can say we did it. Aside from the effort involved, a general-purpose physics engine will probably be less efficient than a purpose-built physics engine. By purpose-built, we mean designing the physics engine specifically to suit what you’re trying ...

Get Physics for Game Developers, 2nd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.