Difference between revisions of "Game Programming Class11"

esse quam videri
Jump to: navigation, search
m (more small edits)
 
(12 intermediate revisions by 2 users not shown)
Line 1: Line 1:
Ship to XBox
+
==MonoGame sample==
 +
 
 +
https://github.com/CartBlanche/MonoGame-Samples
 +
 
 +
 
 +
==Particles==
 +
 
 +
 
 +
Lignting is fun http://gamedev.tutsplus.com/tutorials/implementation/how-to-generate-shockingly-good-2d-lightning-effects/
 +
 
 +
Particle's in IntoLibrary
 +
*easy to add and define
 +
*profile until your game runs slow
 +
 
 +
==Ship to XBox==
 
In class demo
 
In class demo
  
Creators Club
+
*Creators Club
Deploy to XBox360 with visual studio
+
*Deploy to XBox360 with visual studio
Package for deployment
+
*Package for deployment
Intro To 3D
+
 
 +
==Intro To 3D==
 +
XNA 4 is very different than XNA 3.1
 +
http://www.nelxon.com/blog/xna-3-1-to-xna-4-0-cheatsheet/
 +
 
 +
http://msdn.microsoft.com/en-us/library/bb203926.aspx
 +
 
 +
 
 +
 
 
Vectors : Vector3 x , y , z
 
Vectors : Vector3 x , y , z
  
 
Right handed vs Left Handed Coordinate Systems RHCS and LHSC
 
Right handed vs Left Handed Coordinate Systems RHCS and LHSC
  
    * 3D Basics
+
* [http://www.gamedev.net/reference/articles/article673.asp 3D Basics]
    * LHCS and RHCS - part 1
+
* [http://blip.tv/file/1303669 LHCS and RHCS - part 1]
    * Cartesian coordinates
+
* [http://en.wikipedia.org/wiki/Cartesian_coordinates Cartesian coordinates]
  
 
Matrices: A matrix is a class that is used to transform vectors.
 
Matrices: A matrix is a class that is used to transform vectors.
High Level Shader Language
 
  
 +
==High Level Shader Language==
 
HLSL pathway to Hardware.
 
HLSL pathway to Hardware.
  
 +
'''World''': Matrix that holds all Vertices send to video card
 +
 +
'''View''': [http://msdn.microsoft.com/en-us/library/bb975157.aspx frustum] of the camera view; near and far clipping plane
  
World
+
'''Projection''': Flat 2D plane that is interpolated from the 3D View
 +
     
 +
The video card is handed a list of vertices. The vertices are then places in the world. The View is used to see the world and the projection is the actual view surface.
  
Matrix that holds all Vertices send to video card
+
* Vertex Buffer :Vertex buffer is a list of vertices that are used to make one of the XNA privative shapes.
View
+
*VertexDeclaration
  
frustum of the camera view
+
==Mono Game Shaders==
ProjectionFlat 2D plane that intererates the 3D View
 
  
      The video card is handed a list of vertices the vetices are then places in the world. The View is used to see the world and the projection is the actual view surface.
+
https://github.com/mono/MonoGame/wiki/Effects-And-Shaders
    * Vertex Buffer
 
  
      Vertex buffer is a list of vertices that are used to make one of the XNA privative shapes.
+
==Matrix Translations==
    * VertexDeclaration
+
===Simple Translation===
 +
[http://msdn.microsoft.com/en-us/library/bb196414.aspx How To: Draw Points, Lines, and Other 3D Primitives]
  
Matrix Translations Simple Translation How To: Draw Points, Lines, and Other 3D Primitives
 
 
Modified How To: Draw Points, Lines, and Other 3D Primitives - source
 
Modified How To: Draw Points, Lines, and Other 3D Primitives - source
Matrices can be multiplied together to combine the effects to their translation. The order in which you combine the does matter.
 
  
    * I Identity
+
Matrices can be multiplied together to combine the effects to their translation. The order in which you combine them '''does''' matter.
    * S Scale
+
 
    * R Rotate
+
* I Identity
    * O Orbit
+
* S Scale
    * T Translate
+
* R Rotate
 +
* T Translate
 +
* O Orbit
  
 +
http://msdn.microsoft.com/en-us/library/ms533864(VS.85).aspx
  
 
Intro3DVert1.zip - source
 
Intro3DVert1.zip - source
 +
 +
==3D Primitives==
 +
* LineList
 +
* LineStrip
 +
* TriangleList
 +
* TriangleStrip
 +
 +
DrawUserPrimitives Project
  
 
==Homework==
 
==Homework==
 
Create a simple 3D Vertex buffer that draws some kind of simple object. You can use points, Triangles, or lines, but no meshes.
 
Create a simple 3D Vertex buffer that draws some kind of simple object. You can use points, Triangles, or lines, but no meshes.

Latest revision as of 03:24, 4 September 2013

MonoGame sample

https://github.com/CartBlanche/MonoGame-Samples


Particles

Lignting is fun http://gamedev.tutsplus.com/tutorials/implementation/how-to-generate-shockingly-good-2d-lightning-effects/

Particle's in IntoLibrary

  • easy to add and define
  • profile until your game runs slow

Ship to XBox

In class demo

  • Creators Club
  • Deploy to XBox360 with visual studio
  • Package for deployment

Intro To 3D

XNA 4 is very different than XNA 3.1 http://www.nelxon.com/blog/xna-3-1-to-xna-4-0-cheatsheet/

http://msdn.microsoft.com/en-us/library/bb203926.aspx


Vectors : Vector3 x , y , z

Right handed vs Left Handed Coordinate Systems RHCS and LHSC

Matrices: A matrix is a class that is used to transform vectors.

High Level Shader Language

HLSL pathway to Hardware.

World: Matrix that holds all Vertices send to video card

View: frustum of the camera view; near and far clipping plane

Projection: Flat 2D plane that is interpolated from the 3D View

The video card is handed a list of vertices. The vertices are then places in the world. The View is used to see the world and the projection is the actual view surface.

  • Vertex Buffer :Vertex buffer is a list of vertices that are used to make one of the XNA privative shapes.
  • VertexDeclaration

Mono Game Shaders

https://github.com/mono/MonoGame/wiki/Effects-And-Shaders

Matrix Translations

Simple Translation

How To: Draw Points, Lines, and Other 3D Primitives

Modified How To: Draw Points, Lines, and Other 3D Primitives - source

Matrices can be multiplied together to combine the effects to their translation. The order in which you combine them does matter.

  • I Identity
  • S Scale
  • R Rotate
  • T Translate
  • O Orbit

http://msdn.microsoft.com/en-us/library/ms533864(VS.85).aspx

Intro3DVert1.zip - source

3D Primitives

  • LineList
  • LineStrip
  • TriangleList
  • TriangleStrip

DrawUserPrimitives Project

Homework

Create a simple 3D Vertex buffer that draws some kind of simple object. You can use points, Triangles, or lines, but no meshes.