Welcome!

.NET Authors: Liz McMillan, Yakov Werde, Matthew Pollicove , Kevin Benedict

Related Topics: .NET

.NET: Book Review

Building XNA 2.0 Games

A Practical Guide for Independent Game Development

This book is a great introductory and tutorial book for XNA programming. It's clearly written, assumes no significant prior knowledge, and will have even beginners creating basic games by the end of the book.

Chapter 1 gives a crash course in .NET and programming in C#. It's a nice lead-in to the book, but too short to be of any value in learning .NET or C#. If you need an introduction to .NET or C#, check out Beginning C# 2008: From Novice to Professional, also by Apress. Chapter 2 starts off kicking butt immediately by creating a pong game and showing everything you need to know to start creating simple games for Windows and the Xbox 360 using XNA. From installing C# Express (VB.NET is supported for Windows games, but not the Xbox, because VB.NET uses functionality not support by the XBox's compact framework) and the XNA Game Studio to create backgrounds, paddle and ball movement, and finally, sound, this chapter gets you started right. But it doesn't include scoring or detecting when the ball contacts a paddle.

The third chapter talks a bit about game design, warning about trying to do too much and pointing out the advantages of creating some tools to make creating the game easier. It uses a map editor and a character editor as examples of the type of tools that make the game programmer's job easier. In Chapter 4, the reader is walked through creating a map editor, and in Chapter 5, the character editor is created.

Chapter 6 makes use of all this by creating a basic "ZombieSmashers" game. Chapter 6 also introduces scripting characters. Chapter 7 introduces particles in the form of smoke trails for rockets. It also introduces "triggers," which are created during game play, such as bullets, blood spurts, and muzzle flashes. and starts digging into particle collisions.

Chapter 8 covers all things related to sound, including editing with Audacity, scripting audio, adding music, and adding controller rumble.

Chapter 9 goes into more scripting, setting up a simple AI (artificial intelligence) system, and scripting zombie creation, actions, and deaths.

Chapter 10 adds player health, map transitions, scoring, menus, debugging, and deploying to the Xbox 360.

Chapter 11 covers post-processing effects, things like pixel shaders, bloom, water and refraction effects, and a "blurry grayscale pause effect." This is a complex topic that is barely touched on here. They are covered just enough to let you add some pizzazz to your games.

Chapter 12 covers network play and all that that entails. This is where multi-player capability is added, as well as instructions on how to add your game to Xbox Live. It covers the issues you need to address in moving your game from running on a single Xbox to running on multiple Xboxes across the Internet, including creating, finding, and joining sessions on the Internet, sending and receiving game messages, and packing and sending data over a network.

The two appendices are about the same size and have similar content to the chapters in the rest of the book, so I'll include them in the review just like there were two more chapters. Appendix A is called "Designing the Wraith: Our Freaky Awesome Skeleton Monster." It show how the character was created using the character editor, how it was animated, how hit detection was done, including displaying hits (blood and gore), and showing damage after the hit. The final section, Appendix B, details saving settings, options, and errata such as high scores.

I like this book for its simplicity. At just over 400 pages, books several times bigger than this one have been written on subjects like pixel shading that are only touched on in this book. This book won't make you an expert, or even moderately competent in any of the areas touched on; it will, however, take you from basic knowledge of programming to having your own game up and running on Windows or the XBox 360 in a very short order. Anyone with the ability to write a simple C# program can ,after reading this book, not only write simple games, but will understand how real games are created, and be ready to delve as deeply into game design as they want.

Authors: James Silva and John Sedlak
Publisher: Apress
ISBN: 978-1-4302-0979-9
Price: $39.99

More Stories By Dennis Hayes

Dennis Hayes is a programmer at Georgia Tech in Atlanta Georgia where he writes software for the Adult Cognition Lab in the Psychology Department. He has been involved with the Mono project for over six years, and has been writing the Monkey Business column for over five years.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.