Note: Supplemental materials are not guaranteed with Rental or Used book purchases.
Purchase Benefits
What is included with this book?
About the Author | p. xiii |
About the Technical Reviewer | p. xv |
Acknowledgments | p. xvii |
Introduction | p. xix |
Getting Started | p. 1 |
Downloading and Installing the Software | p. 1 |
Installing Visual Studio 2008 | p. 2 |
Installing XNA Game Studio 3.0 | p. 6 |
Your First "Game" | p. 9 |
Summary | p. 12 |
Introduction to XNA Game Studio 3.0 | p. 13 |
The Project Structure of an XNA Game | p. 13 |
Important Methods in an XNA Game | p. 15 |
Initialize Method | p. 17 |
LoadContent Method | p. 17 |
UnloadContent Method | p. 18 |
Update Method | p. 18 |
Draw Method | p. 20 |
XNA Game Flow | p. 21 |
Putting It All Together | p. 22 |
Check Your Knowledge | p. 26 |
Summary | p. 26 |
Game Content | p. 27 |
What Is Content? | p. 27 |
Types of Content | p. 28 |
Images | p. 28 |
Audio | p. 35 |
Fonts | p. 37 |
Effects | p. 38 |
XML Data | p. 38 |
The XNA Content Pipeline | p. 38 |
What the Content Pipeline Provides | p. 39 |
Content Pipeline Architecture | p. 39 |
Content Stages | p. 41 |
Loading Content at Runtime | p. 41 |
Custom Importers and Processors | p. 42 |
The Content Type Class | p. 43 |
The Intermediate Content and Reader Classes | p. 46 |
The Writer Class | p. 48 |
The Content Processor Class | p. 49 |
Check Your Knowledge | p. 55 |
Summary | p. 55 |
Developing for the Zune | p. 57 |
Deploying to the Zune | p. 57 |
Updating Your Zune's Firmware | p. 58 |
Registering Your Zune with Visual Studio | p. 59 |
Debugging, Running, and Rebooting | p. 66 |
Running with Debugging | p. 67 |
Running Without Debugging | p. 67 |
Creating Windows Versions of Zune Games | p. 68 |
Zune Specifications and Optimization | p. 71 |
Reviewing the Core Zune Specifications | p. 71 |
Writing Performant Code for the Zune | p. 71 |
Handling Input on the Zune | p. 73 |
Accessing the Zune Pad | p. 73 |
Accessing the Directional Click Buttons | p. 77 |
Accessing Other Buttons | p. 77 |
Using an Input Handler Class for Zune and Windows Games | p. 78 |
Playing Music in Zune Games | p. 93 |
Using Media Player Component Classes | p. 93 |
Using the Guide | p. 95 |
Putting It Together | p. 96 |
Your First Real Zune Game: OutBreak | p. 103 |
Designing OutBreak | p. 103 |
Creating OutBreak | p. 107 |
Check Your Knowledge | p. 127 |
Summary | p. 127 |
XNA Fundamental Game Programming Concepts | p. 129 |
Math in Two Dimensions | p. 130 |
The Cartesian Coordinate System | p. 130 |
Points and Vectors | p. 132 |
Trigonometric Functions | p. 137 |
Using Math in Your Games | p. 138 |
Positioning Screen Objects and Dividing by Two | p. 138 |
Locating Sides of Objects | p. 142 |
Creating Bounding Boxes | p. 143 |
Detecting Collisions with Bounding Boxes | p. 144 |
Emulating Physics | p. 144 |
Using Other Time-Dependent Functions | p. 148 |
Collision Detection Revisited | p. 152 |
Simple Collision Detection | p. 153 |
Per-Pixel Collision Detection | p. 153 |
Simple Game State Management | p. 159 |
Using Components | p. 162 |
Bringing It All Together with Monkey Feeder | p. 169 |
Configuring the Solution, Projects, Folders, and Assets | p. 171 |
Creating the Components | p. 172 |
Putting the Components Together | p. 189 |
Setting Game Properties to Appear More Professional | p. 197 |
Build, Run, Copious Celebration | p. 197 |
Suggested Extensions | p. 199 |
Cleaning Up for Deployment | p. 199 |
Making Changes in AssemblyInfo.cs | p. 199 |
Changing the Thumbnail | p. 200 |
Check Your Knowledge | p. 200 |
Summary | p. 201 |
Advanced Techniques | p. 203 |
Device Status | p. 203 |
Checking the Battery Status | p. 203 |
Determining Battery Life | p. 205 |
Determining If the Zune Is Plugged In | p. 205 |
Determining When the Power Status Changes | p. 206 |
Advanced Sprite Batch Techniques | p. 213 |
How Sprite Batches Work | p. 213 |
Blend Modes | p. 213 |
Sprite Batches and Game Performance | p. 217 |
Games in Landscape Mode | p. 223 |
Challenges with Landscape Mode | p. 223 |
Possible Solutions for Landscape Mode | p. 224 |
Best Practices and Considerations for Mode Support | p. 225 |
Using Render Targets for Landscape Mode | p. 225 |
Componentizing Landscape Mode | p. 231 |
Game State Management with Screens | p. 231 |
Screen Management Samples | p. 231 |
Building a Screen Management System | p. 232 |
Storage on the Zune | p. 234 |
Advanced Touch Sensitivity on the Zune | p. 239 |
Graphic Sound Visualizers | p. 243 |
Check Your Knowledge | p. 249 |
Summary | p. 250 |
Final Exercise: Multiplayer Crazy Eights | p. 251 |
Wireless Networking with the Zune | p. 251 |
Elements of a Multiplayer Game | p. 252 |
How Data is Transmitted in Wireless Zune Games | p. 252 |
The Network API and Tags | p. 252 |
Robot Tag: A Two-Player Game | p. 253 |
Game Solution Structure | p. 254 |
Network Session Management | p. 255 |
The Robot Object | p. 257 |
Game Screens | p. 259 |
Robot Tag Review | p. 268 |
Multiplayer Crazy Eights for the Zune | p. 268 |
Rules of Crazy Eights | p. 268 |
Game Requirements | p. 269 |
Network State Design | p. 270 |
Architectural Options (High Level) | p. 273 |
Screen Design | p. 273 |
Building the Card Library | p. 277 |
Building the Screen Manager Library | p. 289 |
Building Crazy Eights | p. 313 |
Summary | p. 373 |
Recommended Resources | p. 375 |
Blogs | p. 375 |
Microsoft Resources | p. 376 |
Creators Club Samples | p. 376 |
Zune Development Quick Reference Guide | p. 377 |
Animation | p. 377 |
Input Handling | p. 377 |
Gesture Support | p. 378 |
Forcing Screen Dimensions on Windows | p. 379 |
Playing Music | p. 379 |
Collision Detection | p. 379 |
Changing Game Properties | p. 380 |
Changing the Thumbnail | p. 381 |
Checking Battery Status | p. 381 |
Drawing in Landscape Mode | p. 382 |
Using Storage | p. 382 |
Creating Visualizers | p. 383 |
Check Your Knowledge Answers | p. 385 |
p. 385 | |
p. 386 | |
p. 386 | |
p. 387 | |
p. 387 | |
Index | p. 389 |
Table of Contents provided by Ingram. All Rights Reserved. |
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.