Game Programming Class1
Contents
Discuss Syllabus
Software
- Visual Studio 2012 available from MSDN
- In VS2012 you need to do some extra steps
- In windows8 you need more extra steps
- XNA 4.0 http://create.msdn.com/en-us/home/getting_started
- DirectX SDK http://msdn.microsoft.com/en-us/directx/aa937788.aspx
- MonoGame 3.0.1 http://www.monogame.net/
- Cocos2dXNA http://cocos2dxna.codeplex.com/
What is XNA?
Discussion
Why do we need it?
Why not use c++?
Major changes in XNA 4
- What's new http://msdn.microsoft.com/en-us/library/bb417503.aspx
- Graphics Profiles
- Reach HLSL 2.0
- HiDef HLSL 3.0 platform showcase features
Mono Game
- http://monogame.codeplex.com/ new site http://www.monogame.net/
- Mono game is the current path to managed games in windows 8
- Also a path from XNA to iOS, Android, Sony Vita, Linux, raspberry pi etc..
What is DirectX?
show c++ examples
watch Accelerating Windows Store Game Development with Middleware http://channel9.msdn.com/Events/Build/2013/3-187
Hello World
Hello World in XNA 4.0 using spritefont. We'll revisit the spriteFont when we build the console/debug class
Hello XNA with texture
Simple xna project that draws a pacman sprite
- Start a new XNA Project
Add two variable declarations at the top of the class <csharp>
Texture2D PacMan; Vector2 PacManLoc;
</csharp>
In the LoadContent
Function add the following code to initialize the two variables declared above
<csharp>
protected override void LoadContent() { // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice);
// TODO: use this.Content to load your game content here //load PacMan image PacMan = Content.Load<texture2d>("pacmanSingle"); //Center PacMan image PacManLoc = new Vector2(graphics.GraphicsDevice.Viewport.Width / 2, graphics.GraphicsDevice.Viewport.Height / 2); }
</csharp>
- Add the following code to the Draw Method to Draw the texture
<csharp> protected override void Draw(GameTime gameTime)
{ graphics.GraphicsDevice.Clear(Color.CornflowerBlue);
// TODO: Add your drawing code here spriteBatch.Begin(); spriteBatch.Draw(PacMan, PacManLoc, Color.White); spriteBatch.End();
base.Draw(gameTime); }
</csharp> pacman image is availble here:
the full game1.cs file should look like
[http://brookfield.rice.iit.edu/jmeyers/gbrowser.php?file=/ITM496-595/ClassSource/Projects/IntroSimpleSpriteWindows/IntroSimpleSpriteWindows/Game1.cs IntroSimpleSpriteWindows/Game1.cs]
the build of the game will look like
Simple 2D texture example with update
HomeWork
Watch Accelerating Windows Store Game Development with Middleware http://channel9.msdn.com/Events/Build/2013/3-187
Install VS2010 get XNA 4 http://www.microsoft.com/download/en/details.aspx?id=23714
or
Install VS 2012 with Monogame 3.0.1
Create an XNA Picture. The picture needs to have at least
- 1 SpriteFont
- 3 Textures
Also please post a screen shot of your project running in the assignments. Zip and upload source to moodle.
You can take a screen shot using the snip tool. Start run snip in vista or 7. Or you can just press the Print Screen key on the keyboard.