Description:

Have you ever wondered what it takes to become a game developer? Or what about taking it a step further and developing for a next-gen console like the Xbox 360 instead of just a PC? With Microsoft's XNA framework, game development has never been more straightforward. This book takes you through introductory and intermediate game development concepts from 2D animation to 3D cameras and effects. Delve into high level shader language (HLSL) and introductory artificial intelligence concepts. The author avoids unnecessary details on background architecture and historical facts and instead focuses on what you want most - developing games from start to finish. The author is an experienced… university-level game development instructor and the book was written specifically as a resource for first time game developers. The hands-on approach walks you through the XNA 2.0 framework for Windows and Xbox 360 development in a concise and easy to follow format.

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.

Preface

Getting Started

System Requirements

Additional Resources

Installation

Creating Your First XNA Application

What You Just Did

Summary

Test Your Knowledge: Quiz

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

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

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

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

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

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

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

Conditional Compilation Symbols

Converting the Collision Game Audio

Converting the Collision Game's Player Input Code

Converting the Collision Game's Screen Size

Zune Performance

What You Just Did

Summary

Test Your Knowledge: Quiz

3D Game Development

Coordinate Systems

Cameras

Creating a 3D Camera

Drawing Primitives

Matrix Multiplication

Movement and Rotation

Backface Culling

More on Rotations

Even More Rotations

Primitive Types

Applying Textures

What You Just Did

Summary

Test Your Knowledge: Quiz

Test Your Knowledge: Exercise

3D Models

Using 3D Models

Setting Up the Project

Adding a Model to Your Project

Drawing a Model Using a BasicModel Class

Adding a Model Manager

Rotating Your Model

What You Just Did

Summary

Test Your Knowledge: Quiz

Test Your Knowledge: Exercise

Creating a First-Person Camera

Components of a Moving 3D Camera

Moving in a First-Person Camera

Rotations in a First-Person Camera

Coding the Camera for the 3D Game

What You Just Did

Summary

Test Your Knowledge: Quiz

Test Your Knowledge: Exercise

3D Collision Detection and Shooting

Creating a Moving Enemy

Adding Some Game Logic

Firing Shots

3D Collision Detection and Bounding Spheres

Adding a Crosshair

Adding Sound

What You Just Did

Summary

Test Your Knowledge: Quiz

Test Your Knowledge: Exercise

HLSL Basics

HLSL Syntax

Dissecting a Sample HLSL Effect File

Applying an HLSL Effect in C#

Applying HLSL Using Textures

HLSL Effects: Creating a Negative

HLSL Effects: Blur

HLSL Effects: Grayscale

What You Just Did

Summary

Test Your Knowledge: Quiz

Test Your Knowledge: Exercise

Particle Systems

Creating a Custom Vertex

Creating a Particle Engine

Adding a Particle Effect File

Adding Your Particle Engine to Your Game

Adding a Starfield

What You Just Did

Summary

Test Your Knowledge: Quiz

Wrapping Up Your 3D Game

Adding a Splash Screen Game Component

Keeping Score

Adding a Power-Up

What You Just Did

Test Your Knowledge: Exercise

Deploying to the Xbox 360

Adding an Xbox 360 Device

Converting a Project to Run on the Xbox 360

Supporting Gamepad Input

Deploying to the Xbox 360

Xbox 360 Display Settings

The Title Safe Region

What You Just Did

Summary

Test Your Knowledge: Quiz

Multiplayer Games

Split-Screen Functionality

Network Game Development

Network Configurations

Writing an XNA Network Game

Modifying the Sprite Class

Modifying the UserControlledSprite Class

Coding Your Game1 Class

Adding Update Code

Adding Draw Code

Adding Biohazard Bombs of Insanity!

What You Just Did

Summary

Test Your Knowledge: Quiz

Answers to Quizzes and Exercises

Index

Free shipping

A minimum purchase of $35 is required. Shipping is provided via FedEx SmartPost® and FedEx Express Saver®. Average delivery time is 1 – 5 business days, but is not guaranteed in that timeframe. Also allow 1 - 2 days for processing. Free shipping is eligible only in the continental United States and excludes Hawaii, Alaska and Puerto Rico. FedEx service marks used by permission."Marketplace" orders are not eligible for free or discounted shipping.

Our guarantee

If an item you ordered from TextbookRush does not meet your expectations due to an error on our part, simply fill out a return request and then return it by mail within 30 days of ordering it for a full refund of item cost.