Synopses & Reviews
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
Synopsis
language (HLSL) and introductory artificial intelligence concepts. The book will walk you through development of two complete and exciting games using 2D and 3D concepts. Then you'll see how to port that code and make those games playable on the Xbox 360. You'll also create a game for the Microsoft Zune and explore issues developers need to think about when targeting that platform. The author 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 3.0 framework in a concise and easy to follow format.
Synopsis
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 with a complete step-by-step introduction. 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 two complete and exciting sample games using 2D and 3D concepts Port the code and make your sample games playable on the Xbox 360 Create a game for the Microsoft Zune and learn how to deal with that platform You can test your understanding and practice new skills as you go with unique Brain Builder exercises and review quizzes in each chapter. Why wait? Amaze your family and friends by building your own games for Xbox 360 and Zune -- with Learning XNA 3.0.
Synopsis
Want to develop games for Xbox 360 and Windows Phone 7? This hands-on book will get you started with Microsoft's XNA 4.0 development framework right away -- even if you have no experience developing games. Although XNA includes several key concepts that can be difficult for beginning web developers to grasp, Learning XNA 4.0 shortens the learning curve by walking you through the framework in a clear and understandable step-by-step format.
Each chapter offers a self-contained lesson with illustrations and annotated examples, along with exercises and review questions to help you test your understanding and practice new skills as you go. Once you've finished this book, you'll know how to develop your own sophisticated games from start to finish.
- Learn game development from 2D animation to 3D cameras and effects
- Delve into high-level shader language (HLSL) and introductory artificial intelligence concepts
- Build three complete, exciting games using 2D, 3D, and multiplayer techniques
- Develop for and deploy your games to the Xbox 360 and Windows Phone 7
Synopsis
XNA 3.0 Game Development for the PC, Xbox 360, and Zune
About the Author
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.
Table of Contents
Dedication; Preface; Who This Book Is For; How This Book Is Organized; Support; Conventions Used in This Book; Using Code Examples; We'd Like to Hear from You; Safari® Books Online; Acknowledgments; Chapter 1: Getting Started; 1.1 System Requirements; 1.2 Additional Resources; 1.3 Installation; 1.4 Creating Your First XNA Application; 1.5 What You Just Did; 1.6 Summary; 1.7 Test Your Knowledge: Quiz; Chapter 2: Fun with Sprites; 2.1 A Look Behind the Scenes; 2.2 Game Development Versus Polling; 2.3 Modifying Your Game; 2.4 Adding a Sprite to Your Project; 2.5 Loading and Drawing Your Sprite; 2.6 Transparency and Other Options; 2.7 Layer Depth; 2.8 Let's Move; 2.9 Animation; 2.10 Adjusting the Framerate; 2.11 Adjusting the Animation Speed; 2.12 What You Just Did; 2.13 Summary; 2.14 Test Your Knowledge: Quiz; 2.15 Test Your Knowledge: Exercise; Chapter 3: User Input and Collision Detection; 3.1 More Sprites; 3.2 Keyboard Input; 3.3 Mouse Input; 3.4 Gamepad Input; 3.5 Keeping the Sprite in the Game Window; 3.6 Collision Detection; 3.7 What You Just Did; 3.8 Summary; 3.9 Test Your Knowledge: Quiz; 3.10 Test Your Knowledge: Exercise; Chapter 4: Applying Some Object-Oriented Design; 4.1 Designing Your Classes; 4.2 Creating a Sprite Class; 4.3 Creating a User-Controlled Sprite Class; 4.4 Creating an Automated Sprite; 4.5 Game Components; 4.6 Coding the SpriteManager; 4.7 Cleaning Up; 4.8 Making Them Move; 4.9 What You Just Did; 4.10 Summary; 4.11 Test Your Knowledge: Quiz; 4.12 Test Your Knowledge: Exercise; Chapter 5: Sound Effects and Audio; 5.1 Using XACT; 5.2 Implementing XACT Audio Files in Code; 5.3 Using the Simplified API for Sound and Audio; 5.4 Adding More Sound to Your Game; 5.5 What You Just Did; 5.6 Summary; 5.7 Test Your Knowledge: Quiz; 5.8 Test Your Knowledge: Exercise; Chapter 6: Basic Artificial Intelligence; 6.1 The Turing Test; 6.2 Creating Sprites at Random Intervals; 6.3 Randomly Spawning Sprites; 6.4 Irrelevant Objects; 6.5 Creating a Chasing Sprite; 6.6 Creating an Evading Sprite; 6.7 What You Just Did; 6.8 Summary; 6.9 Test Your Knowledge: Quiz; 6.10 Test Your Knowledge: Exercise; Chapter 7: Putting It All Together; 7.1 Drawing 2D Text; 7.2 Randomly Generating Different Sprite Types; 7.3 Adding Some Variety to Your Sprites; 7.4 Adding a Background Image; 7.5 Game Scoring; 7.6 Game States; 7.7 Enabling/Disabling GameComponents; 7.8 Game-Over Logic and the Game-Over Screen; 7.9 Fine-Tuning Gameplay; 7.10 Creating Power-Ups; 7.11 What You Just Did; 7.12 Summary; 7.13 Test Your Knowledge: Quiz; 7.14 Test Your Knowledge: Exercise; Chapter 8: Deploying to the Microsoft Zune; 8.1 Setting Up Your Zune Device Connection; 8.2 Creating a Zune Project; 8.3 Input on the Zune; 8.4 Audio on the Zune; 8.5 Resolution and Gameplay Issues; 8.6 Converting the Collision Game from Windows to Zune; 8.7 Conditional Compilation Symbols; 8.8 Converting the Collision Game Audio; 8.9 Converting the Collision Game's Player Input Code; 8.10 Converting the Collision Game's Screen Size; 8.11 Zune Performance; 8.12 What You Just Did; 8.13 Summary; 8.14 Test Your Knowledge: Quiz; Chapter 9: 3D Game Development; 9.1 Coordinate Systems; 9.2 Cameras; 9.3 Creating a 3D Camera; 9.4 Drawing Primitives; 9.5 Matrix Multiplication; 9.6 Movement and Rotation; 9.7 Backface Culling; 9.8 More on Rotations; 9.9 Even More Rotations; 9.10 Primitive Types; 9.11 Applying Textures; 9.12 What You Just Did; 9.13 Summary; 9.14 Test Your Knowledge: Quiz; 9.15 Test Your Knowledge: Exercise; Chapter 10: 3D Models; 10.1 Using 3D Models; 10.2 Setting Up the Project; 10.3 Adding a Model to Your Project; 10.4 Drawing a Model Using a BasicModel Class; 10.5 Adding a Model Manager; 10.6 Rotating Your Model; 10.7 What You Just Did; 10.8 Summary; 10.9 Test Your Knowledge: Quiz; 10.10 Test Your Knowledge: Exercise; Chapter 11: Creating a First-Person Camera; 11.1 Components of a Moving 3D Camera; 11.2 Moving in a First-Person Camera; 11.3 Rotations in a First-Person Camera; 11.4 Coding the Camera for the 3D Game; 11.5 What You Just Did; 11.6 Summary; 11.7 Test Your Knowledge: Quiz; 11.8 Test Your Knowledge: Exercise; Chapter 12: 3D Collision Detection and Shooting; 12.1 Creating a Moving Enemy; 12.2 Adding Some Game Logic; 12.3 Firing Shots; 12.4 3D Collision Detection and Bounding Spheres; 12.5 Adding a Crosshair; 12.6 Adding Sound; 12.7 What You Just Did; 12.8 Summary; 12.9 Test Your Knowledge: Quiz; 12.10 Test Your Knowledge: Exercise; Chapter 13: HLSL Basics; 13.1 HLSL Syntax; 13.2 Dissecting a Sample HLSL Effect File; 13.3 Applying an HLSL Effect in C#; 13.4 Applying HLSL Using Textures; 13.5 HLSL Effects: Creating a Negative; 13.6 HLSL Effects: Blur; 13.7 HLSL Effects: Grayscale; 13.8 What You Just Did; 13.9 Summary; 13.10 Test Your Knowledge: Quiz; 13.11 Test Your Knowledge: Exercise; Chapter 14: Particle Systems; 14.1 Creating a Custom Vertex; 14.2 Creating a Particle Engine; 14.3 Adding a Particle Effect File; 14.4 Adding Your Particle Engine to Your Game; 14.5 Adding a Starfield; 14.6 What You Just Did; 14.7 Summary; 14.8 Test Your Knowledge: Quiz; Chapter 15: Wrapping Up Your 3D Game; 15.1 Adding a Splash Screen Game Component; 15.2 Keeping Score; 15.3 Adding a Power-Up; 15.4 What You Just Did; 15.5 Test Your Knowledge: Exercise; Chapter 16: Deploying to the Xbox 360; 16.1 Adding an Xbox 360 Device; 16.2 Converting a Project to Run on the Xbox 360; 16.3 Supporting Gamepad Input; 16.4 Deploying to the Xbox 360; 16.5 Xbox 360 Display Settings; 16.6 The Title Safe Region; 16.7 What You Just Did; 16.8 Summary; 16.9 Test Your Knowledge: Quiz; Chapter 17: Multiplayer Games; 17.1 Split-Screen Functionality; 17.2 Network Game Development; 17.3 Network Configurations; 17.4 Writing an XNA Network Game; 17.5 Modifying the Sprite Class; 17.6 Modifying the UserControlledSprite Class; 17.7 Coding Your Game1 Class; 17.8 Adding Update Code; 17.9 Adding Draw Code; 17.10 Adding Biohazard Bombs of Insanity!; 17.11 What You Just Did; 17.12 Summary; 17.13 Test Your Knowledge: Quiz; Answers to Quizzes and Exercises; Chapter 1: Getting Started; Chapter 2: Fun with Sprites; Chapter 3: User Input and Collision Detection; Chapter 4: Applying Some Object-Oriented Design; Chapter 5: Sound Effects and Audio; Chapter 6: Basic Artificial Intelligence; Chapter 7: Putting It All Together; Chapter 8: Deploying to the Microsoft Zune; Chapter 9: 3D Game Development; Chapter 10: 3D Models; Chapter 11: Creating a First-Person Camera; Chapter 12: 3D Collision Detection and Shooting; Chapter 13: HLSL Basics; Chapter 14: Particle Systems; Chapter 15: Wrapping Up Your 3D Game; Chapter 16: Deploying to the Xbox 360; Chapter 17: Multiplayer Games; Colophon;