This project is read-only.

How to use RapidXNA

1. Set up the project

  • Add a reference to the .dll that corresponds with your current project
    • Windows: RapidXNA.dll
    • Xbox 360: RapidXNA360.dll
    • Windows Phone 7: RapidXNAWP7.dll (supports Mango, 7.1 only)
  • Remove the SpriteBatch related code and variables from Game1.cs
  • Create a variable of type RapidXNA.RapidEngine, instantiate it in the LoadContent() method in your Game1.cs
  • Add an Update call to your Update() method in Game1.cs for your instance of RapidXNA.RapidEngine's Update()
  • Add a Draw call to your Draw() method in Game1.cs for your instance of RapidXNA.RapidEngine's Draw()
  • Create a new class for your initial game screen (or state if you prefer) and inherit from RapidXNA.DataType.IGameScreen

2. Using "game screens"

Each IGameScreen has overridable Load, Draw and Update methods, that correspond directly to the methods in your usual Game1.cs code. These are all called automatically in the background by the RapidEngine. They also each have a reference to Engine.

Using the ScreenService

3. Using Services

RapidXNA calls the major reusable classes that you would usually only need one instance of a "service". The engine will update and draw all services (so if you want to write an in app console you would most probably make it a service. You can write your own services by inheriting from IRapidService.

Using general Services


This list is a work in progress
  • Game state management via "screens"
  • Asynchronous screen loading
  • Built in Keyboard, GamePad and Mouse wrapping (Phone touch input wrapping in planning).


Overview of the major classes:

Last edited Jan 3, 2012 at 1:24 PM by edg3, version 4


No comments yet.