Game Coding Complete
| 2003-06-01 00:00:00 | | 0 | Game Programming
Expertly presents, from start to finish, the process of programming commercially viable computer games! This is the kind of book that you won?t let out of our sight. From page one, Mike McShaffry, a leading programmer for Origin Systems (Makers of Wing Commander and the Ultima series) and Microsoft (Bicycle Casino), shows you how to create and code the very best interactive games. With dozens of tips and code illustrations, plus extensive narration of critical non-code issues, Game Coding Complete is the guide to orchestrating bug-free, high-quality game code that passes the muster of leading publishers such as Electronic Arts and Microsoft. The book covers all critical facets of programming, working with teams, selecting the right game architecture, testing and debugging, scheduling, and more. The book includes hundreds of insider tricks and techniques used by programmers who learned their craft on cutting edge titles such as Ultima Online. The C++ language is used throughout to explain specific programming concepts. This book is destined to become a classic for all game programmers. Foreword by game industry icon Warren Spector.
In this book you will learn:
* The nuts and bolts of the game coding process
* Insider techniques for writing top-notch game code
* 2D and 3D graphics techniques used by professional game developers
* Unique insight on critical algorithms you can?t live without, debugging secrets, and tips for managing critical projects
* Key `gotchas` to avoid that can really hurt game development projects
User review
Good for those who will understand
I bought this book a little bit early, and had to go review my C++ before i could fully use it, and when I did, I came to realize that I was holding THE book on game coding.
This book covers nearly everything, in that what the author doesn't cover (or one of the other guest authors) he gives you the next path you should go down in order to achieve your goals in that certain area of coding.
He also offers tons of tips and inside stories on what it's like working as a game developer in a recurring section called 'tales from the pixel mines' which are all very informative, and i enjoyed reading all of them.
Do not think, however, that this book will hold your hand throughout the process. In some parts of the example code the author literally says some thing like: `//type your own code here`. this opens the readers' eyes to the fact that learning to make games is not a process of just being taught, but is mostly about discovering it for yourself (didn't Galileo say something like that?). Rest assured, when something has to be taught, the author teaches it, after all, at some point it wastes time to 're-invent the wheel' and that is where the true magic of this book comes into play. It leaves enough for YOU to do on your own, instead of just showing one way and expecting you to copy it. really is like having a teacher that you can open and learn from whenever you want.
in short, this is the best book on game programming I have ever had the pleasure to read, and once you have a good basis in Direct3D and can understand some advanced C++ concepts, you need to pick up this book. You NEED to.
User review
Good programming wisdom
The book covers many topics. I was interested in more info on how to use Lua and was glad to see some pages about it (about 50 pages worth). The code is neat and easy to read. You may not like the idea of having to download the code though. All coding is done using DirectX. Was hoping to see some use of obj (even better fbx) file loading of meshes and wanted more info on XAudio2 or XACT3 but no such luck. So, it has a dated feel about it. Otherwise still a good book. BTW Thief was a good game.
User review
Great insider detail, very schizophrenic however
This book has lots of pertinent information for designing/coding games from an industry veteran. The book discusses many aspects of the process including handling input, user interface issues, networking, all the things that go into making a game.
The problem is that he is a bit schizophrenic at times in his audience. At some points he talks at baby programming level, and then he can jump to talking about things that he never explicitly assumes you have knowledge of (graphics programming, for example) and makes a trite statement at the end of a section like `That is also why this model is a negative z-buffer axis model rotational handle function, of course`. Which just makes close to 0 sense.
But it's a good book to have and I wish I have version 3 for more up to date ideas in making games.
User review
A 'must' for programming libraries and gamers alike
The third updated edition of GAME CODING COMPLETE offers the latest hands-on guide to developing commercial-quality games and is a 'must' for programming libraries and gamers alike. Written by a veteran game programmer, it considers the entire game development procedure and how to make a game, from providing working code examples and 3D programming insights to handling the technical hurdles of audio. A full-featured, highly recommended basic for any library catering to online gamers.
User review
Excellent book on game architecture
Good:
Overall I am very impressed with this book. It is written in a clear and fun to read style with interesting real-life anecdotes injected throughout the text. I found the architecture presented to work very well in a multitude of applications (games, tools, game servers). I disagree with the reviewer that was upset with the level of technology presented. This book is about tying all those technologies together in a concise, functional system. Mr. Mike has done that very well. The specific render technology is up to the end user and with this architecture they can be used without a problem. I would actually preferred he drop the chapters on rendering and put more in on multithreading.
Bad:
I really can't complain too much about this book. I've been professionally developing software for quite some time and still learned a lot from it. My few complaints: I found the chapter on resource management to be weak. Not only are there better ways to do this (visitor pattern), but it glosses over streaming large files.
I give this book 4 stars because I think for a novice to intermediate game programmer, you just can't get much better. But as a more seasoned programmer, you might find yourself wanting more information about threading, patterns, and resource management.
Edit: Source Code is now available (http://www.mcshaffry.com/GameCode/)