Difference between revisions of "Game Programming Class1"

esse quam videri
Jump to: navigation, search
Line 2: Line 2:
 
<b>Software</b>
 
<b>Software</b>
  
*Visual Studio 2005 available from MSDN (VS2008 work with XNA 3.0 CTP but not with XNA 2.0)</li>
+
*Visual Studio 2005 available from MSDN (VS2008 work with XNA 3.0 CTP but not with XNA 2.0)
*XNA 2.0 GSE <a href="http://creators.xna.com/en-US/downloads">http://creators.xna.com/en-US/downloads</a></li>
+
*XNA 2.0 GSE http://creators.xna.com/en-US/downloads
*Direct X SDK <a href="http://msdn.microsoft.com/en-us/directx/aa937788.aspx">http://msdn.microsoft.com/en-us/directx/aa937788.aspx</a>
+
*Direct X SDK http://msdn.microsoft.com/en-us/directx/aa937788.aspx
   
 
   
 
 
      
 
      
 
==What is XNA?==
 
==What is XNA?==
 
 
Discussion<br>
 
Discussion<br>
 
 
Why do we need it?
 
Why do we need it?
  
Line 29: Line 25:
 
 
 
Simple xna project that draws a pacman sprite
 
Simple xna project that draws a pacman sprite
+
 
+
==Hello World==
Demo
+
 
 +
make demo
 +
 +
==Demo==
 
*Start a new XNA Project
 
*Start a new XNA Project
  
 
+
Add two variable declarations at the top of the class
Add two varibale declareations at the top of the class
 
  
 
<pre>
 
<pre>
 
             Texture2D PacMan;
 
             Texture2D PacMan;
 
             Vector2 PacManLoc;
 
             Vector2 PacManLoc;
</pre>
+
</pre>
</li>
+
 
<li>
+
In the Load_Content Funtion add the following code to initialize the two variables declared above
In the Load_Content Funtion add the following code to initialize the two varibales declared above
+
<pre>
<pre> protected override void LoadContent()
+
        protected override void LoadContent()
 
         {
 
         {
 
             // Create a new SpriteBatch, which can be used to draw textures.
 
             // Create a new SpriteBatch, which can be used to draw textures.
Line 52: Line 50:
 
             PacMan = Content.Load<texture2d>("pacmanSingle");
 
             PacMan = Content.Load<texture2d>("pacmanSingle");
 
             PacManLoc = new Vector2(graphics.GraphicsDevice.Viewport.Width / 2, graphics.GraphicsDevice.Viewport.Height / 2);
 
             PacManLoc = new Vector2(graphics.GraphicsDevice.Viewport.Width / 2, graphics.GraphicsDevice.Viewport.Height / 2);
         }</texture2d></pre>
+
         }
</li>
+
</pre>
 
+
*Add the following code to the Draw Method to Draw the texture
<li>Add the following code to the Draw Method to Draw the texture
+
<pre>
<pre> protected override void Draw(GameTime gameTime)
+
protected override void Draw(GameTime gameTime)
 
         {
 
         {
 
             graphics.GraphicsDevice.Clear(Color.CornflowerBlue);
 
             graphics.GraphicsDevice.Clear(Color.CornflowerBlue);
Line 69: Line 67:
 
</pre>
 
</pre>
  
pacman image is availble @
+
pacman image is availble here
<a href="http://brookfield.rice.iit.edu/jmeyers/ITM496-595/ClassSource/Content/pacman/png/pacmanSingle.png">pacmanSingle.png</a>
+
[[IMAGE:Image:PacmanSingle.png ]]
 +
 
  
<img src="http://brookfield.rice.iit.edu/jmeyers/ITM496-595/ClassSource/Content/pacma/png/pacmanSingle.png">
 
 
the full game1.cs file should look like
 
the full game1.cs file should look like
 +
[[Image:IntroSimpleSpriteWindows.png]]
 +
 
<a href="http://brookfield.rice.iit.edu/jmeyers/gbrowser.php?file=/ITM496-595/ClassSource/Projects/IntroSimpleSpriteWindows/IntroSimpleSpriteWindows/Game1.cs">
 
<a href="http://brookfield.rice.iit.edu/jmeyers/gbrowser.php?file=/ITM496-595/ClassSource/Projects/IntroSimpleSpriteWindows/IntroSimpleSpriteWindows/Game1.cs">
 
IntroSimpleSpriteWindows/Game1.cs
 
IntroSimpleSpriteWindows/Game1.cs

Revision as of 18:31, 14 December 2008

Discuss Syllabus

Software

What is XNA?

Discussion
Why do we need it?

Why not use c++?

What is DirectX?

show c++ examples

<a href="http://creators.xna.com/en-US/create_detail">quick start guide - create</a>
How much c# do you know?

in class

Simple 2D texture demo

Simple xna project that draws a pacman sprite

Hello World

make demo

Demo

  • Start a new XNA Project

Add two variable declarations at the top of the class

            Texture2D PacMan;
            Vector2 PacManLoc;

In the Load_Content Funtion add the following code to initialize the two variables declared above

        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
            PacMan = Content.Load<texture2d>("pacmanSingle");
            PacManLoc = new Vector2(graphics.GraphicsDevice.Viewport.Width / 2, graphics.GraphicsDevice.Viewport.Height / 2);
        }
  • Add the following code to the Draw Method to Draw the texture
	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);
        }

pacman image is availble here File:Image:PacmanSingle.png


the full game1.cs file should look like IntroSimpleSpriteWindows.png

<a href="http://brookfield.rice.iit.edu/jmeyers/gbrowser.php?file=/ITM496-595/ClassSource/Projects/IntroSimpleSpriteWindows/IntroSimpleSpriteWindows/Game1.cs"> IntroSimpleSpriteWindows/Game1.cs </a> the build of the game will look like <img src="ClassSource/Images/IntroSimpleSpriteWindows.png">


Simple 2D texture example with update