Mathematics for 3D Game Programming and Computer Graphics by Eric Lengyel is one of those books I have literally been eyeing for years and just never got around to reading. If you are not familiar, Eric Lengyel is the creator of the C4 Engine, and also the author of various game development books. He is well regarded in the community, so I assumed this was a must read title. After reading it, I still agree; it’s an excellent source of knowledge.
The book covers the basic stuff you would expect from a 3D math book: vectors, matrices, quaternions, intersections between various types of geometry, visibility, etc. Great, so the bases are covered. Lengyel goes a bit further, though, and discusses other topics that are very important in computer graphics. For example: lighting and shadowing, decals, curved surfaces, and physics (including fluid and cloth simulation). So a decent amount of topics are covered, but the chapters are still brief enough to finish each in one sitting.
While there are some implementation examples, the text is pretty light on the code. The code that is here is mostly based around OpenGL, however the concepts should still translate to DirectX. Not a huge issue. When needed, he does show code samples, but most of the copy is dedicated to math discussion and the equations.
Granted, some of the equations and proofs were dense and hard to follow. This was made worse by the fact that I was reading this on the Kindle, and the equations were made up of small images you couldn’t zoom in on. Having said that, I still understood most of the concepts, but there were a few times I felt overwhelmed. I can’t really fault the author for that, since his written explanations were all very clear and concise. It’s just some of the content is deep and complex, so be prepared.
All in all, I found this to be a great resource and you can never know enough math in this field. Unfortunately, I will still probably have to look up some of the equations online or in other books due to the low quality of the images in the e-book. But this is a minor complaint compared to the amount of information backed in this title. I would recommend this.