By Daniel Schuller
Published June 2010 List Price:$49.99, Your Amazon.com Price: $24.50
Amazon.com Sales Rank:502,714 Availability: Usually ships in 24 hours
Summary: Even experienced game development students sometimes have a hard time making their vision for a great game a reality. The number of available programming languages, libraries, and production methods can make the development process overwhelming and result in complicated, unreliable game code. C# Game Programming: For Serious Game Creation shows student game programmers how to write simple, clean, and reliable code step-by-step through the creation of a basic game. The game is built using C#, a high-level programming language, and OpenGL, an industry favorite for graphics display. Students will get an overview of the methods and libraries used to build good games, learn how to use those libraries and create your own, and finally build your own scrolling shooter game. They'll even find tips and information on how to develop your own game ideas and you'll have an excellent code base to work with. C# Game Programming: For Serious Game Creation provides students with all the information they need to take their game ideas from concept to completion.
GDNet Staff Review: First, a word about the title. A few years ago, a couple of books came out describing "Serious Games". This term was used to describe software that was conceptually and structurally similar to a game but was intended to serve a very non-gamelike purpose. Serious Games were things like machine training or traffic simulation. When this book refers to "Serious Game Creation", it is not referring specifically to that. In this case, the title appears to be intended to differentiate this book from the more beginner-oriented "for teens" titles. Think of it more as C# For People Who Aren't Messing Around.
Second, the book is build around the Tao C# framework, and any input (keyboard, mouse, joypad) and output (OpenGL screen, OpenAL sound) in the book either invokes the Tao framework directly or abstracts the Tao code further. This is important to know because C#, unlike something like ActionScript, has grown beyond being a single platform into a generalized language available on several platforms. C# is, for example, a primary language for Unity3D and MonoTouch. And while some of the code in this book might be useful for those platforms, much of it will not, as they have their own I/O abstractions. While C# spans several platforms, this book is a Windows-only thing.
All that disclaimering aside, C# Game Programming For Serious Game Creation is about as far from the "for teens" model as you can get. This is a book intended for seasoned game programmers who want to hit the ground running on a C# project. The language itself is given about the most cursory coverage possible in favor of building a game loop, view, graphics, and input.
And at that point you are catering to a fairly narrow audience. And this narrow audience likely already has a project in mind. Is it necessary to, for example, spend half of a chapter explaining and implementing a matrix functions? Either your audience already knows about matrices, doesn't know about them and needs to, or doesn'''t know about them and doesn't need them. And C# Game Programming For Serious Game Creation'''s matrix code is only useful to one of those groups.
C# Game Programming For Serious Game Creation is useful for experienced programmers who either want to get into C# for a project that needs porting or for moderately experienced programmers who think C# might be a possibility for a not-yet-implemented idea. In either case, the book would be worth the asking price. Otherwise you should take a closer look before deciding if it is worth it.