Do you have what it takes to become a game developer? With this hands-on book, you'll learn quickly and easily how to develop computer games with Microsoft's XNA 3.0 framework-not just for your PC, but for Xbox 360 and the Microsoft Zune as well.
Written by an experienced university-level game development instructor, Learning XNA 3.0 walks you through the framework in a clear and understandable step-by-step format. Each chapter offers a self-contained lesson with lots of illustrations and annotated examples to help you master key concepts. Once you finish the book, you'll know how to develop sophisticated games from start to finish.
Learn game development concepts from 2D animation to 3D cameras and effects
Delve into high-level shader language (HLSL) and introductory artificial intelligence concepts
Develop three complete and exciting games using 2D,3D and multiplayer concepts
Develop and deploy games to the Xbox 360 and the Microsoft Zune
While teaching XNA to beginning game developers, author Aaron Reed noticed that several key concepts were difficult for students to grasp. Learning XNA 3.0 was written specifically to address those issues. With this book, you can test your understanding and practice new skills as you go with unique "Test Your Knowledge" exercises and review questions in each chapter.
Why wait? Amaze your family and friends by building your own games for the PC, Xbox 360, and Zune-with Learning XNA 3.0.
"An outstanding book! Teaches you XNA development in a smart way, starting from 2D basics and going into 3D and shader development. What I really like is the 'peeling the onion' approach the author takes, which builds up knowledge from previous chapters."--David "LetsKillDave" Weller, CEO, Cogito Ergonomics, LLC, and former XNA program manager
Chapter 1 Getting Started
System Requirements
Additional Resources
Installation
Creating Your First XNA Application
What You Just Did
Summary
Test Your Knowledge: Quiz
Chapter 2 Fun with Sprites
A Look Behind the Scenes
Game Development Versus Polling
Modifying Your Game
Adding a Sprite to Your Project
Loading and Drawing Your Sprite
Transparency and Other Options
Layer Depth
Let's Move
Animation
Adjusting the Framerate
Adjusting the Animation Speed
What You Just Did
Summary
Test Your Knowledge: Quiz
Test Your Knowledge: Exercise
Chapter 3 User Input and Collision Detection
More Sprites
Keyboard Input
Mouse Input
Gamepad Input
Keeping the Sprite in the Game Window
Collision Detection
What You Just Did
Summary
Test Your Knowledge: Quiz
Test Your Knowledge: Exercise
Chapter 4 Applying Some Object-Oriented Design
Designing Your Classes
Creating a Sprite Class
Creating a User-Controlled Sprite Class
Creating an Automated Sprite
Game Components
Coding the SpriteManager
Cleaning Up
Making Them Move
What You Just Did
Summary
Test Your Knowledge: Quiz
Test Your Knowledge: Exercise
Chapter 5 Sound Effects and Audio
Using XACT
Implementing XACT Audio Files in Code
Using the Simplified API for Sound and Audio
Adding More Sound to Your Game
What You Just Did
Summary
Test Your Knowledge: Quiz
Test Your Knowledge: Exercise
Chapter 6 Basic Artificial Intelligence
The Turing Test
Creating Sprites at Random Intervals
Randomly Spawning Sprites
Irrelevant Objects
Creating a Chasing Sprite
Creating an Evading Sprite
What You Just Did
Summary
Test Your Knowledge: Quiz
Test Your Knowledge: Exercise
Chapter 7 Putting It All Together
Drawing 2D Text
Randomly Generating Different Sprite Types
Adding Some Variety to Your Sprites
Adding a Background Image
Game Scoring
Game States
Enabling/Disabling GameComponents
Game-Over Logic and the Game-Over Screen
Fine-Tuning Gameplay
Creating Power-Ups
What You Just Did
Summary
Test Your Knowledge: Quiz
Test Your Knowledge: Exercise
Chapter 8 Deploying to the Microsoft Zune
Setting Up Your Zune Device Connection
Creating a Zune Project
Input on the Zune
Audio on the Zune
Resolution and Gameplay Issues
Converting the Collision Game from Windows to Zune
Aaron Reed has extensive software development experience and more importantly, experience in software development education. Since 2004 he has taught courses at Neumont University in .NET, web development and web services, XNA, systems design and architecture, and more.
Aaron's experience in teaching both DirectX and XNA for several years to university-level students helps him understand what topics are easily understood and which ones need more depth and emphasis. Through experience in the classroom he also has a good understanding of what format and sequence makes the most sense to present the material. This book follows that format and is meant to present game development concepts in the way most efficient and most comprehendible as proven in the classroom.
The animal on the cover of Learning XNA 3.0 is a sea robin fish (Chelidonichthys lucernus), otherwise known as a sapphirine gurnard. While the body of the fish is usually a somewhat bland color mix of browns, reds, and whites, its eyes are a striking peacock blue.
The sea robin fish is so named because it swims across the ocean floor and opens and closes its fins in a manner reminiscent of a flying bird. Some species of the fish also use their fins to fly above water for short distances.
In addition to having "wings," the sea robin fish also has six "legs" (three on eachside of its body) that were once part of its pectoral fin. These legs-which are reallyflexible spines-allow the sea robin fish to stir up and detect food from the oceanfloor while walking.
The sea robin fish occasionally brings to mind yet another creature: when caught, the fish croaks like a frog. Chefs say the sea robin fish can replace scorpion fish in bouillabaisse, and add that the fish has firm and tender flesh when cooked.
Been using this for a while and following along pretty well, but I recommend a small amount of C# experience.
2/6/2010
4.0
Very accessible - gets it right
By The closet programmer
from Paris, France
About Me Maker
Pros
Accurate
Easy to understand
Helpful examples
Well-written
Cons
Best Uses
Intermediate
Novice
Comments about oreilly Learning XNA 3.0:
I bought this book with no game programming experience, and a reasonable understanding of C#, i.e. the fundamentals.
The book's progression is balanced, neither too slow nor too fast. The examples are meaningful and very practical. Most of the classes your build will be the bare minimum you will need to start a project on your own.
You NEED to be reasonably fluent in C# fundamentals, so if you've never done any C# you probably should start there.
XNA is great, but I'll re-iterate what has already been said: anything beyond a very basic game will still take a ton of effort. This book is a wonderful starting point, which will help you answer the question: do I want to delve deeper?
12/23/2009
4.0
Good Book.
By Syam
from India
Pros
Easy to understand
Cons
Best Uses
Novice
Comments about oreilly Learning XNA 3.0:
I am an engineering graduate. I purchased this book some days ago and i feel that its perfect for starters to explore the windows gaming world.
1/27/2009
(3 of 3 customers found this review helpful)
5.0
This is the book to have if you want to learn XNA 3.0
By Bill Heldman
from Undisclosed
Comments about oreilly Learning XNA 3.0:
I purchased this book to learn XNA 3.0. I'm very pleased with the layout and the writing style of Mr. Reed.
If you're interested in learning XNA 3.0 this is a great book to start with, even if you're relatively new to programming.
NOTE: Game programming is not for the faint of heart. Even though Microsoft has done a world of good by creating XNA 3.0 to run over Visual Studio--thereby taking tons of the work away from you, there is a still a lot to know!!