9 of 10 people found the following review helpful
4.0 out of 5 stars
A complete view on game engine architecture., 15 July 2012
This is a very good book about structuring your low-level engine code when writing a game. It does feel very 'complete', in the sense of being almost everything here - though the title is kind of misleading, since there is focus on low-level engine stuff, and not that much on coding a game itself. If you're interested more in creating a game than an engine, you'll be better with books or tutorials focused on a specific framework (XNA, for example).
It's not for a complete beginner, but it isn't very advanced. You need to know some C++, as every code bit is either in C++ or in Lua (Lua syntax is explained in the book). You don't need to be a code guru to understand everything, but you won't get any C++ lessons here (which imho is a *very* good thing), maybe besides smart pointers and Lua binding. There's some DirectX and Windows-specific code, and I'm not sure I would recommend actually using such a low-level API when writing small to medium projects, so have in mind that some chapters here may be a waste of space for you (for me it was the audio chapter, 3D graphics, a lot of things DirectX-specific, Lua crash course were unnecessary).
I recommend buying the book IF you're interested in writing your own engine from scratch. I would add that if you just want to make games, creating such a low-level engine is probably a bad idea, since there are many great frameworks out there - but on the other hand it's good to know HOW everything could work inside. It's one of the best books about game engine architecture, although there could be more class diagrams and less code examples (I must say however, that most of the code examples are very readable and clean). There are some interesting object-oriented concepts that may be unknown to some programmers (concept of flat class hierarchy, component model architecture, processes, events), so it really does depend on your overall knowledge.
The rating I'd like to give is 4.5/5, so do have that in mind.
TL;DR: Buy the book if you're a programmer and want to write a game engine or if you're interested in how the insides of your game should work. Don't buy the book if you don't know how to code but you want to write games.