This book was quite an interesting read. Though a book of math and physics sounds like it would be boring, I found the text to be pretty engaging. At 688 pages, it’s not the longest technical resource, but the authors manage to pack a good deal in those pages. Of course, there is a lot of math in here, but that’s not all. Even some random topics like mazes and game theory pop up near the end. I really did enjoy the book and it seems worthwhile.
Some of the areas of focus include even basic number representations, arithmetic, algebra and trigonometry, vectors and calculus, to mass and acceleration, collision detection, force and motion, friction and more. Finally, in the last section, the authors cover some tangential topics like tile-based games, mazes, game theory and AI, even search techniques. Really, a good roster.
One of the main reasons I purchased this book, aside from general interest, was to gain some knowledge to apply to a custom physics engine. While that’s still (in my mind) a debatable goal, I do feel like Mathematics & Physics for Programmers has helped, at least with the general concepts.
Unfortunately, I did not try to implement any of the equations or pseudo code from the book, so I won’t comment on the accuracy of the code. It’s possible there were errors that I did not notice. I typically don’t base my implementations directly from books. I use the books to understand the big picture, to get a sense of what’s possible, and to understand the vocabulary and terms that I need to search for. Then I’ll find resources online when it comes to writing the code.
What I will say, though, is that the text is not as good as the other big 3d math books, specifically 3D Math Primer for Graphics and Game Development by Fletcher Dunn or Mathematics for 3D Game Programming and Computer Graphics by Eric Lengyel. For sure, if you are only buying one or two math books for game development, get either of those first. However, if you are like me and you’ve already read the popular books on the topic, this isn’t such a bad choice as a refresher or to round out your knowledge.