Author: Jason Gregory
Publisher: A K Peters, 2009
Aimed at: Students and practitioners in games design
Pros: A comprehensive background to graphics and games
Cons: Not a practical introduction to game production
Reviewed by: David Conrad
This is a big hardback book that promises to tell you a lot about game engines but in fact what it mainly tells you about is the theory of graphics and software design from a game engine point of view.
It contains lots of chapters about very general topics, including how best to code things in C++ and aspects of object-oriented programming, i.e. the sort of things that you might assumed that a reader would know about before picking up a copy of the book.
This isn't necessarily a bad thing. For example, if you are organising an academic course for game designer wannabes then it will provide all the background the students need in one volume. What it won't do is give them any hands-on experience of using a game engine.
While the book is very light on detail but quite strong on generalities. It covers 3D graphics, including all of the detailed math, how the rendering pipeline works, how animation works and so on. It does make reference to the various common game engines and there is even a brief overview of their types and properties, but it's all very academic.
Its is important to say what this book is not. It certainly isn't hint, tips and hacks for any particular game engine. It certainly doesn't give you any practical knowledge of choosing or using a game engine and it certainly isn't going to get you started on game creation in any sense. What it will do is provide a high level view of the whole area while making sure that much of the background knowledge that you should have is in place. If this is what you are looking for then it's a well produced and well written book.
I can well imagine that many students on game design courses will have no choice but to study this book but what about readers with some free will? Oddly there are two very different categories that it might be useful to. The first is the intelligent beginner wanting to know how games work, i.e. a potential student on a games course. The second is anyone who has actually started to use a games engine and has some practical experience under their belt but who wants an overview to make the whole thing make sense.
This book really isn't about game engine architecture, which it covers only as part of a much bigger project of putting the whole of game creation into perspective, and it certainly isn't for anyone wanting a practical introduction to game creation.