Difference between revisions of "GAM666/DPS901 Weekly Schedule 20103"
(→This Week) |
|||
(7 intermediate revisions by the same user not shown) | |||
Line 80: | Line 80: | ||
* [https://cs.senecac.on.ca/~gam666/pages/content/trans.html Sprite in Motion] | * [https://cs.senecac.on.ca/~gam666/pages/content/trans.html Sprite in Motion] | ||
** timing | ** timing | ||
+ | *** upper limit on drawing rate | ||
+ | *** keypress latency | ||
** model coordination | ** model coordination | ||
+ | *** coordinator-primitive pattern | ||
** direct-device connectivity | ** direct-device connectivity | ||
+ | *** portal-primitive pattern | ||
** user action key mapping | ** user action key mapping | ||
* Projects | * Projects | ||
Line 132: | Line 136: | ||
** [http://svnbook.red-bean.com/ SVN book at red-bean.com] or download[https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/svn-book.pdfthe PDF from here]. | ** [http://svnbook.red-bean.com/ SVN book at red-bean.com] or download[https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/svn-book.pdfthe PDF from here]. | ||
** [http://ankhsvn.open.collab.net/ AnkhSVN - Free Visual Studio SVN Integration Alternative To VisualSVN] | ** [http://ankhsvn.open.collab.net/ AnkhSVN - Free Visual Studio SVN Integration Alternative To VisualSVN] | ||
+ | |||
+ | == Week 6 - Oct 10 == | ||
+ | === This Week === | ||
+ | * [https://cs.senecac.on.ca/~gam666/pages/content/2dmat.html 2D Mathematics (continued)] | ||
+ | ** Matrix transformations | ||
+ | * [https://cs.senecac.on.ca/~gam666/pages/content/3dmat.html 3D Mathematics] | ||
+ | ** Coordinate Systems | ||
+ | ** Vectors | ||
+ | ** Transformations | ||
+ | *** World Transformations | ||
+ | *** Camera Transformations | ||
+ | *** Projection Transformations | ||
+ | ** Math Library | ||
+ | ** Direct3D Utilities | ||
+ | * [https://cs.senecac.on.ca/~gam666/pages/content/basic.html Graphics Primitives] | ||
+ | ** Graphics Primitive display paradigm | ||
+ | ** Vertex buffers | ||
+ | ** Implementing world, view, and projection transformations | ||
+ | |||
+ | === To Do === | ||
+ | * Practice transforming a vector using a matrix | ||
+ | * Practice matrix multiplication | ||
+ | * Workshop Exercise | ||
+ | ** Checkout the SimpleSprites sample on the repository | ||
+ | ** Add the missing code to this sample - three sprite image files are included | ||
+ | ** Draw/Move the three sprite images down and to the right on the screen | ||
+ | ** When the three images fall off the screen start drawing them at the other end | ||
+ | ** Add suspend logic to handle loss of focus | ||
+ | ** Refer to the DirectX documentation for descriptions of the function calls | ||
+ | |||
+ | === Resources === | ||
+ | * Lecture Material | ||
+ | ** DirectX documentation as installed on your local computer | ||
+ | ** [http://msdn.microsoft.com/en-us/library/ MSDN Library] | ||
+ | * Projects | ||
+ | ** [http://subversion.tigris.org/ Subversion (SVN)] | ||
+ | ** [http://tortoisesvn.net/downloads Download Page of TortoiseSVN] | ||
+ | ** [http://tortoisesvn.net/docs/release/TortoiseSVN_en/index.htmlTortoiseSVN Documentation] | ||
+ | ** [http://svnbook.red-bean.com/ SVN book at red-bean.com] or download[https://cs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/svn-book.pdfthe PDF from here]. | ||
+ | ** [http://ankhsvn.open.collab.net/ AnkhSVN - Free Visual Studio SVN Integration Alternative To VisualSVN] | ||
+ | |||
+ | == Week 7 - Oct 17 == | ||
+ | |||
+ | === This Week === | ||
+ | |||
+ | * Mid-Term Test | ||
+ | * [https://cs.senecac.on.ca/~gam666/pages/content/basic.html Graphics Primitives (continued)] | ||
+ | ** Model Branch | ||
+ | *** Scene Component | ||
+ | **** Scene Coordinator | ||
+ | **** Frame Base Class | ||
+ | **** Object Base Class | ||
+ | ***** Box Derived Class | ||
+ | ***** Grid Derived Class | ||
+ | *** Viewing Component | ||
+ | **** Viewing Coordinator | ||
+ | **** Camera Class | ||
+ | *** Design Component | ||
+ | ** Direct-Device Branch | ||
+ | *** Graphics Card Component | ||
+ | **** Display Portal | ||
+ | **** Graphic Class | ||
+ | **** VertexList Class | ||
+ | |||
+ | === To Do === | ||
+ | |||
+ | # Checkout 7-Graphics Primitives | ||
+ | # Run Graphics Primitive Sample | ||
+ | # Derive a Plane Object from abstract base class Object | ||
+ | |||
+ | === Resources === | ||
+ | * Lecture Material | ||
+ | ** DirectX documentation as installed on your local computer | ||
+ | ** [http://msdn.microsoft.com/en-us/library/ MSDN Library] | ||
+ | |||
+ | == Week 8 - Oct 31 == | ||
+ | |||
+ | === This Week === | ||
+ | |||
+ | * Mathematics (addendum to course notes) | ||
+ | ** Planes | ||
+ | ** Collisions | ||
+ | *** Planes | ||
+ | *** Spheres | ||
+ | * [https://cs.senecac.on.ca/~gam666/pages/content/3dren.html Visibility] | ||
+ | ** Culling Techniques | ||
+ | *** Occlusion culling | ||
+ | **** Painter's algorithm | ||
+ | **** Depth Buffering | ||
+ | ** Direct Device Branch | ||
+ | *** Graphics Card Component | ||
+ | **** Display Portal | ||
+ | * [https://cs.senecac.on.ca/~gam666/pages/content/light.html Lighting] | ||
+ | ** Model Branch | ||
+ | *** Lighting Component | ||
+ | **** Lighting coordinator | ||
+ | **** Light primitive | ||
+ | ** Direct Device Branch | ||
+ | *** Graphics Card component | ||
+ | **** Display portal | ||
+ | **** DeviceLight primitive | ||
+ | |||
+ | |||
+ | === To Do === | ||
+ | |||
+ | # Checkout 8-Visibility | ||
+ | # Run Visibility Sample | ||
+ | # Derive a Plane Object from abstract base class Object | ||
+ | |||
+ | === Resources === | ||
+ | * Lecture Material | ||
+ | ** DirectX documentation as installed on your local computer | ||
+ | ** [http://msdn.microsoft.com/en-us/library/ MSDN Library] | ||
+ | |||
+ | == Week 9 - Nov 7 == | ||
+ | |||
+ | === This Week === | ||
+ | |||
+ | * [https://cs.senecac.on.ca/~gam666/pages/content/light.html Lighting (continued)] | ||
+ | ** Direct Device Branch | ||
+ | *** Graphics Card component | ||
+ | **** DeviceLight primitive | ||
+ | * [https://cs.senecac.on.ca/~gam666/pages/content/textu.html Texturing] | ||
+ | ** Texture Coordinates | ||
+ | ** Magnification | ||
+ | ** Minification | ||
+ | ** Sampling | ||
+ | *** Nearest-Neighbour | ||
+ | *** BiLinear | ||
+ | *** Anisotropic | ||
+ | ** Model Branch | ||
+ | *** Scene Component | ||
+ | **** Texture Element | ||
+ | *** Design Component | ||
+ | ** Direct Device Branch | ||
+ | *** Graphics Card Component | ||
+ | **** Display Portal | ||
+ | **** VertexList Element | ||
+ | **** Graphic Element | ||
+ | **** DeviceTexture Element | ||
+ | |||
+ | |||
+ | === To Do === | ||
+ | |||
+ | # Checkout 9-Lighting | ||
+ | # Run Lighting Sample | ||
+ | # Checkout 10-Texturing | ||
+ | # Run Texturing Sample | ||
+ | |||
+ | === Resources === | ||
+ | * Lecture Material | ||
+ | ** DirectX documentation as installed on your local computer | ||
+ | ** [http://msdn.microsoft.com/en-us/library/ MSDN Library] |
Latest revision as of 22:03, 8 November 2010
GAM666/DPS901 | Weekly Schedule | Student List | Project Requirements | Teams and their Projects | Student Resources
GAM666/DPS901 -- Weekly Schedule 20103
Week 1 - Sep 5
This Week
- Windows Programming
- Dialog Sample
- Selection Sample
To Do
- Install Visual Studio 2010
- Run Dialog Sample
- Run Selection Sample
Week 2 - Sep 12
This Week
- COM Objects and DirectX
- Assignment Setup
To Do
- Download the DirectX SDK
- Create an account on this Wiki; make sure your userid is your seneca email id
- Install an IRC client, register a nickname on irc.freenode.net and join #seneca channel; check IRC Basics for help
- Optional: designate/create a blog for GAM666/DPS901 and add its filtered feed to Planet CDOT
- Form Teams, Identify Members (4 members) and add your team and members to GAM666/DPS901 Teams 20103 Before Thursday 16th.
- Add your name and info. to GAM666/DPS901Student List 20103
Resources
- ACS Visual Studio 2010
- DirectX SDK August 2007
- How To edit Wiki pages
- How To edit Wiki Cheatsheet
- IRC Basics
- IRC Tutorial
- Subversion (SVN)
- Download Page of TortoiseSVN
- TortoiseSVN Documentation
- SVN book at red-bean.com or downloadthe PDF from here.
- AnkhSVN - Free Visual Studio SVN Integration Alternative To VisualSVN
Week 3 - Sep 19
This Week
- Display Modes
- The fwk4gps framework, its branches, and component architecture
- Singleton class as an alternative to global variables
- Including interfaces rather than class declarations to minimize header file dependencies
- Use the Direct3D COM object to interrogate the hardware for the installed options
- Event Iteration
- Messaging, the main application window and event iteration
- Housekeeping during loss and restoration of focus
- Housekeeping during re-configuration
- Use the Direct3DDevice9 COM object to access the display device
- Projects
- Introducing SVN and Demos by Fardad in class
To Do
- Download SVN and install it on your computer.
Resources
- Lecture Material
- Projects
Week 4 - Sep 26
This Week
- Background Image
- Sprites
- Textures
- Color Model
- Use the Direct3DSprite COM object to manage the drawing of 2D images
- Use the Direct3DTexture9 COM object to hold an image on video memory
- Shades of Red application reviews the material covered to date
- Sprite in Motion
- timing
- upper limit on drawing rate
- keypress latency
- model coordination
- coordinator-primitive pattern
- direct-device connectivity
- portal-primitive pattern
- user action key mapping
- timing
- Projects
- Hints for Using SVN to collaborate on school projects (demo in class)
To Do
- Download the 15-Controller and ShadesOfRed Samples from the Course Repository. (userid: "dpsgam" password: blank [no password])
- Submit your game proposal and schedule an appointment with your instructor (click here to book an appointment)
- Complete the coding for ShadesOfRed
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library
- Projects
Week 5 - Oct 3
This Week
- Sprite in Motion (continued)
- Use the Direct3DFont COM object to draw the font for a text item on the HUD
- 2D Mathematics
- Coordinate System
- Vectors
- Trigonometry
- Matrix Transformations
- Projects
To Do
- Add a background image to the ShadesOfRed sample
- Add a sprite in motion to the ShadesOfRed sample
- Add a second moving sprite to the Sprite in Motion sample
- Add text to identify the motion of the second sprite on the HUD
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library
- Projects
Week 6 - Oct 10
This Week
- 2D Mathematics (continued)
- Matrix transformations
- 3D Mathematics
- Coordinate Systems
- Vectors
- Transformations
- World Transformations
- Camera Transformations
- Projection Transformations
- Math Library
- Direct3D Utilities
- Graphics Primitives
- Graphics Primitive display paradigm
- Vertex buffers
- Implementing world, view, and projection transformations
To Do
- Practice transforming a vector using a matrix
- Practice matrix multiplication
- Workshop Exercise
- Checkout the SimpleSprites sample on the repository
- Add the missing code to this sample - three sprite image files are included
- Draw/Move the three sprite images down and to the right on the screen
- When the three images fall off the screen start drawing them at the other end
- Add suspend logic to handle loss of focus
- Refer to the DirectX documentation for descriptions of the function calls
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library
- Projects
Week 7 - Oct 17
This Week
- Mid-Term Test
- Graphics Primitives (continued)
- Model Branch
- Scene Component
- Scene Coordinator
- Frame Base Class
- Object Base Class
- Box Derived Class
- Grid Derived Class
- Viewing Component
- Viewing Coordinator
- Camera Class
- Design Component
- Scene Component
- Direct-Device Branch
- Graphics Card Component
- Display Portal
- Graphic Class
- VertexList Class
- Graphics Card Component
- Model Branch
To Do
- Checkout 7-Graphics Primitives
- Run Graphics Primitive Sample
- Derive a Plane Object from abstract base class Object
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library
Week 8 - Oct 31
This Week
- Mathematics (addendum to course notes)
- Planes
- Collisions
- Planes
- Spheres
- Visibility
- Culling Techniques
- Occlusion culling
- Painter's algorithm
- Depth Buffering
- Occlusion culling
- Direct Device Branch
- Graphics Card Component
- Display Portal
- Graphics Card Component
- Culling Techniques
- Lighting
- Model Branch
- Lighting Component
- Lighting coordinator
- Light primitive
- Lighting Component
- Direct Device Branch
- Graphics Card component
- Display portal
- DeviceLight primitive
- Graphics Card component
- Model Branch
To Do
- Checkout 8-Visibility
- Run Visibility Sample
- Derive a Plane Object from abstract base class Object
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library
Week 9 - Nov 7
This Week
- Lighting (continued)
- Direct Device Branch
- Graphics Card component
- DeviceLight primitive
- Graphics Card component
- Direct Device Branch
- Texturing
- Texture Coordinates
- Magnification
- Minification
- Sampling
- Nearest-Neighbour
- BiLinear
- Anisotropic
- Model Branch
- Scene Component
- Texture Element
- Design Component
- Scene Component
- Direct Device Branch
- Graphics Card Component
- Display Portal
- VertexList Element
- Graphic Element
- DeviceTexture Element
- Graphics Card Component
To Do
- Checkout 9-Lighting
- Run Lighting Sample
- Checkout 10-Texturing
- Run Texturing Sample
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library