XNA for C#
DirectX 9 for C#
DirectX 9 for C++
DirectX 9 for VB
My XNA Book
       Go to section on this site

Additional info

Latest Forum posts

 Account settings
  Posted by: Anonymous
  When: 07/05/2014 at 09:48:39

 forced subtitle
  Posted by: Applefly
  When: 07/05/2014 at 06:00:48

 convert DVD into PMS
  Posted by: Applefly
  When: 07/05/2014 at 05:55:25

 DVD to Digital Copy easily
  Posted by: VIKIVannessa
  When: 05/05/2014 at 06:52:29

 DVD on Xbox 360/Xbox One Console
  Posted by: VIKIVannessa
  When: 05/05/2014 at 06:51:47

 Extract .Srt Subtitles
  Posted by: Applefly
  When: 04/05/2014 at 03:54:38

 Encode Movie collection
  Posted by: Applefly
  When: 04/05/2014 at 03:52:41

 Convert DVD to WMV
  Posted by: Applefly
  When: 29/04/2014 at 05:53:50

 rip DVDs into digital files
  Posted by: Applefly
  When: 29/04/2014 at 05:51:20

 iTunes movies/music to Kindle Fire
  Posted by: ciciyu80
  When: 29/04/2014 at 05:10:20


XNA 3.0 Game Programming Recipes

Riemer Grootjans

Chapter 1: Getting Started with XNA 3.0 (29 pages)

The first part of this chapter will get you up and running with XNA 3.0 by guiding you through the installation process and helping you get your code running on a PC and on the Xbox 360 console.
The second part of this chapter contains some more advanced topics for those interested in the inner workings of the XNA Framework.

1-1. Install XNA Game Studio 3.0
This Recipe shows you how to download and install XNA 3.0 Game Studio on your computer.

1-2. Start Your First XNA 3.0 Project
When you start a new XNA 3.0 Project, XNA will present you with some starting methods. This recipe discusses these predefined methods and explains the Game Loop.

1-3. Deploy Your XNA3.0 Game on Xbox 360
Learn how you can upload your games to your XBox360 console to run play your own games on your television.

1-4. Deploy Your XNA3.0 Game on the Zune
New to XNA 3.0, you can now deploy your 2D games to the Zune handheld. This recipe shows you how this can be accomplished.

1-5. Deploy Your XNA3.0 Game on Another PC
This recipe discusses which files are required to make your game run on another computer, and how you can make a single-file installer that installs your game and all required files in one click.

1-6. Customize Game Loop Timing
Learn the details of the Game Loop timing and how you can change these to your liking.

1-7. Make Your Code Plug-and-Play Using GameComponents
Separate your code into GameComponents to ensure their reusability. Once defined, a GameComponent can be added to your game with just a single line of code.

1-8. Allow Your GameComponents to Communicate with Each Other by Implementing GameServices
When you are using multiple GameComponents in your game, they will somehow need to interact with each other. Since you want to be able to interchange GameComponents in a flexible way, you cannot code these interaction by hard. GameServices allow the GameComponents to interact with each other's functionality, instead of with each other specifically.

1-9. Save and Load Data to/from a File
When saving and loading data, you cannot simply use the .NET IO namespaces, as this would result in acces violations on the XBox360 console. This can be solved by using XNA's StorageDevice class, which works both on the PC and the XBox360 console.

Recipe 1-8: Billboard Component interacting with QuakeCamera Component through GameServices


If you appreciate the amount of time I spend creating and updating
these pages, feel free to donate -- any amount is welcome !

- Website design & XNA + DirectX code : Riemer Grootjans -
©2003 - 2011 Riemer Grootjans

This site in English
This site in Korean
This site in Czech

Microsoft MVP Award

2007 - 2011 MVP Award
DirectX - XNA


XNA 2.0 Recipes Book (8)
XNA 3.0 Recipes Book (8)
Chapter 1
Chapter 2
Chapter 3
Chapter 4
Chapter 5
Chapter 6
Chapter 7
Chapter 8
Extra Reading (3)
Matrices: geometrical
Matrix Mathematics
Homogenous matrices
Community Projects (1)
Tutorials (160)
-- Expand all --

Thank you!

Support this site --
any amount is welcome !

Stay up-to-date

I don't have the time to keep a News section, so stay informed about the updates by clicking on this RSS file!