Difference between revisions of "Game Programming Class14"

esse quam videri
Jump to: navigation, search
(Animation Tutorial: fix links)
Line 1: Line 1:
 
==Manifest==
 
==Manifest==
New deadline must be installed by Monday the 11th.  
+
New deadline: must be installed by Monday the 11th.  
  
 
The games for XNA Arcade need to be in the folder by Weds the 13th.
 
The games for XNA Arcade need to be in the folder by Weds the 13th.
Line 6: Line 6:
 
Please take some time in class and make your sign and save it here  
 
Please take some time in class and make your sign and save it here  
  
\\siam2\ClassFolders\XNAProgramming\Manifest
+
\\siam2\ClassFolders\XNAProgramming\Manifest\
  
PLace your projects @
+
Place your projects @
 
+
* \\siam2\ClassFolders\XNAProgramming\Manifest\ForXbox\
\\siam2\ClassFolders\XNAProgramming\Manifest\ForXbox
+
* \\siam2\ClassFolders\XNAProgramming\Manifest\ForXNAArcade\
 
 
\\siam2\ClassFolders\XNAProgramming\Manifest\ForXNAArcade
 
  
 
==Animation Tutorial==
 
==Animation Tutorial==
 
 
*http://www.stromcode.com/2008/03/10/modelling-for-xna-with-blender-part-i/
 
*http://www.stromcode.com/2008/03/10/modelling-for-xna-with-blender-part-i/
 
*http://www.stromcode.com/2008/03/11/modelling-for-xna-with-blender-part-ii/
 
*http://www.stromcode.com/2008/03/11/modelling-for-xna-with-blender-part-ii/
Line 21: Line 18:
 
*http://www.stromcode.com/2008/03/16/modeling-for-xna-with-blender-part-iv/
 
*http://www.stromcode.com/2008/03/16/modeling-for-xna-with-blender-part-iv/
  
==Mixing 2D and 3D==
+
==Mixing 2D and 3D==
 
+
I forgot to show you last week that the Spritebatch draw code need to be modified slightly in order top mix 2D and 3D
I forgot to show you last week that the spritebatch draw code need to be modified slightly in order top mix 2D and 3D
+
You need to use SaveStateMode.SaveSate if you don't explicitly order everything in your Draw code. Saving states can be SLOOWWWWW and significantly reduce your performance. [http://blogs.msdn.com/shawnhar/archive/2006/11/13/spritebatch-and-renderstates.aspx More info on RenderStates]
You need to use SaveStateMode.SaveSate is you don't explicitly order everything in you DrawCode. Saving states can be SLOOWWWWW and significantly reduce your performance http://blogs.msdn.com/shawnhar/archive/2006/11/13/spritebatch-and-renderstates.aspx.
 
 
         
 
         
 
<pre>spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Deferred, SaveStateMode.SaveState);
 
<pre>spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Deferred, SaveStateMode.SaveState);
Line 31: Line 27:
 
==Lighting==
 
==Lighting==
  
The xna basic effect is a simple implementation of a [http://msdn.microsoft.com/en-us/library/bb509561%28VS.85%29.aspx HLSL] effect.  
+
The XNA basic effect is a simple implementation of a [http://msdn.microsoft.com/en-us/library/bb509561%28VS.85%29.aspx HLSL] effect.  
 
     
 
     
 
HLSL is Microsoft's High level implementation of FFE Fixed Function Pipeline implemented in video hardware.</p>
 
HLSL is Microsoft's High level implementation of FFE Fixed Function Pipeline implemented in video hardware.</p>
GPU Hardware does two things The vertexr shader runs first and is rasterized to 2D then the pixel shaders run.
+
GPU Hardware does two things. The vertex shader runs first and is rasterized to 2D, then the pixel shaders run.
  
*Vertex Shader  
+
* Vertex Shader  
*Pixel Shader
+
* Pixel Shader
 
    
 
    
 
Lighting Demo with Basic Effect IntroMeshLights.zip
 
Lighting Demo with Basic Effect IntroMeshLights.zip
Line 48: Line 44:
 
[http://creators.xna.com/en-US/sample/nonrealisticrendering Creators Club Non Realistic Render]
 
[http://creators.xna.com/en-US/sample/nonrealisticrendering Creators Club Non Realistic Render]
 
 
[http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series1/Lighting_basics.php Lighting_basics]
+
[http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series1/Lighting_basics.php Lighting basics]
  
[http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series3/Per-pixel_lighting.php/ Per-pixel_lighting]
+
[http://www.riemers.net/eng/Tutorials/XNA/Csharp/Series3/Per-pixel_lighting.php/ Per-pixel lighting]
  
 
==SkyBox==
 
==SkyBox==
Line 58: Line 54:
 
IntroMeshLightsSkyBox.zip
 
IntroMeshLightsSkyBox.zip
  
Sybox generator
+
Skybox generator
 
 
http://www.planetside.co.uk/terragen/
 
  
http://www.stromcode.com/2008/03/30/building-an-xna-skybox-with-blender/
+
===Making Skyboxes===
 +
* [http://www.planetside.co.uk/terragen/ with Terragen]
 +
* [http://www.stromcode.com/2008/03/30/building-an-xna-skybox-with-blender/ with Blender]

Revision as of 21:43, 4 May 2009

Manifest

New deadline: must be installed by Monday the 11th.

The games for XNA Arcade need to be in the folder by Weds the 13th.

Please take some time in class and make your sign and save it here

\\siam2\ClassFolders\XNAProgramming\Manifest\

Place your projects @

  • \\siam2\ClassFolders\XNAProgramming\Manifest\ForXbox\
  • \\siam2\ClassFolders\XNAProgramming\Manifest\ForXNAArcade\

Animation Tutorial

Mixing 2D and 3D

I forgot to show you last week that the Spritebatch draw code need to be modified slightly in order top mix 2D and 3D You need to use SaveStateMode.SaveSate if you don't explicitly order everything in your Draw code. Saving states can be SLOOWWWWW and significantly reduce your performance. More info on RenderStates

spriteBatch.Begin(SpriteBlendMode.AlphaBlend, SpriteSortMode.Deferred, SaveStateMode.SaveState);

Lighting

The XNA basic effect is a simple implementation of a HLSL effect.

HLSL is Microsoft's High level implementation of FFE Fixed Function Pipeline implemented in video hardware.</p> GPU Hardware does two things. The vertex shader runs first and is rasterized to 2D, then the pixel shaders run.

  • Vertex Shader
  • Pixel Shader

Lighting Demo with Basic Effect IntroMeshLights.zip

HLSL

HLSL Demo

http://code.msdn.microsoft.com/HLSL

Creators Club Non Realistic Render

Lighting basics

Per-pixel lighting

SkyBox

Ziggyware

IntroMeshLightsSkyBox.zip

Skybox generator

Making Skyboxes