Game Programming Class2

esse quam videri
Revision as of 02:05, 29 August 2011 by Jeff (talk | contribs) (XNA Structures)
Jump to: navigation, search


free game fonts XNA Redistributable Font Pack

Fun with Fonts in XNA

note this font pack is now included in XNA 4

SVN Checkout

All of the examples for this class and the basic game library we wil be building is in our SVN repo this week we'll practice checking out a folder from the repo.



SNV checkout demo.

In the coming weeks we'll learn how to commit to the SNV. Until then all you need to know is how to checkout.

in class

Spritefont demo


XNA Structures

Game Class

The XNA Game class has two private properties

  • GraphicsDeviceManager graphics;
  • ContentManager content;
//the game constuctor can be used to set some graphics settings.
graphics.PreferredBackBufferHeight = 768;
graphics.PreferredBackBufferWidth = 1024;
//graphics.PreferredBackBufferHeight = 1080;
//graphics.PreferredBackBufferWidth = 1920;
//graphics.IsFullScreen = true;
Graphics for Mobile Game is 20 fps and 480 x 800.


   // Frame rate is 30 fps by default for Windows Phone.  
   TargetElapsedTime = TimeSpan.FromTicks(333333);  
   // Pre-autoscale settings.  
   graphics.PreferredBackBufferWidth = 480;  
   graphics.PreferredBackBufferHeight = 800;  


  1. Declare SpriteBatch spriteBatch;
  2. Initialize()
  3. LoadContent()
  4. UnloadContent()
  5. Update(GameTime gameTime)


FrameRate and GameTime

Time and Timespan

Example of update using GameTime to calculate elapsed time

  • IntroSimpleSpriteWindows/Game1.cs

Understanding GameTime We'll revisit game time when we talk about performance profiling.

  1. Draw(GameTime gameTime)

Console And Trace

We will build a console class later and debug in game.

Texture2D and SpriteBatches

2D Graphics Overview

About textures and Batching

Displays, ViewPorts, Client Bounds

Alpha channels



demo project




  1. Options SpriteBlendMode
  2. Additive Enable additive blending.
  3. AlphaBlend Enable alpha blending.
  4. None No blending specified.

Other Projects


  • XNA Picture With Update
Update your picture to include some movement with the update method. Use the keyboard or mouse to interact with something on the screen
  • Read Chapter 2 in XNA 3.0
  • Read Chapter 4 in XNA 3.0 (yes we skipped 3 we'll come back)