Author: Mike McShaffrey
Publisher: Paraglyph Press, 2005
Aimed at: C++ programmers interested in writing games
Pros: Imparts the knowledge of years of working on big projects
Cons: Requires reader to know C++ and have some of the ideas of game programming
Reviewed by: Mike James
Although this book on game programming was published four years ago it is still worthy of attention. Mike McShaffrey’s book is distinctive by being in C++. It mostly uses DirectX but isn’t really a “this is how you do it book”. It is clear that Mike has been up against the real problems of creating games –real and very big games. He talks about the basic theory of how to go about programming and explains all sorts of silly mistakes he has made in the past. I particularly liked his aside describing how he took to object-oriented programming so completely that he managed to choke the compiler with the huge number of derived classes he created. The creation was so unstable that the team was frightened to add new variables and resorted to coding values into the unused high bytes of existing variables!
There are code examples that show how to do things and there are discussions of the basics but this isn’t really a beginner’s book. You already need to know how to program in C++ amd have some ideas about creating a 2D/3D game, in particular sprites, meshes, textures and so on. Surprisingly you don’t have to be interested in creating a game to get something from the book. The stories are sufficiently scary to appeal to anyone working on a large project.
As it’s a huge work, a brick of a book, you are unlikely to read it all. However if you want to share the thoughts of someone who has been there and done it then this is a hugely enjoyable book and deserves a top rating.