Difference between revisions of "Game Programming Class11"
m (Jeff moved page XNA Programming Class11 to Game Programming Class11) |
|||
(7 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 | ||
Line 15: | Line 37: | ||
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== | ||
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 |
− | : | ||
− | + | '''Projection''': Flat 2D plane that is interpolated from the 3D View | |
− | |||
− | |||
− | '''Projection''' | ||
− | :Flat 2D plane that is interpolated from the 3D View | ||
− | The video card is handed a list of vertices | + | 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 :Vertex buffer is a list of vertices that are used to make one of the XNA privative shapes. |
− | :Vertex buffer is a list of vertices that are used to make one of the XNA privative shapes. | ||
*VertexDeclaration | *VertexDeclaration | ||
− | + | ==Mono Game Shaders== | |
− | + | https://github.com/mono/MonoGame/wiki/Effects-And-Shaders | |
+ | ==Matrix Translations== | ||
+ | ===Simple Translation=== | ||
[http://msdn.microsoft.com/en-us/library/bb196414.aspx How To: Draw Points, Lines, and Other 3D Primitives] | [http://msdn.microsoft.com/en-us/library/bb196414.aspx 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 | + | Matrices can be multiplied together to combine the effects to their translation. The order in which you combine them '''does''' matter. |
* I Identity | * I Identity | ||
Line 52: | Line 71: | ||
http://msdn.microsoft.com/en-us/library/ms533864(VS.85).aspx | http://msdn.microsoft.com/en-us/library/ms533864(VS.85).aspx | ||
− | |||
Intro3DVert1.zip - source | Intro3DVert1.zip - source | ||
==3D Primitives== | ==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
Contents
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.