Difference between revisions of "GAM666/DPS901 Weekly Schedule 20123"

From CDOT Wiki
Jump to: navigation, search
(To Do)
Line 2: Line 2:
 
= Weekly Schedule 20123=
 
= Weekly Schedule 20123=
  
== Week 1 - Sep 4 ==
+
== Week 1 - Sep 2 ==
  
 
=== This Week ===
 
=== This Week ===
* [https://cs.senecac.on.ca/~gam666/pages/content/windo.html Windows Programming]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/intro.html Introduction]
 +
* [https://scs.senecac.on.ca/~gam666/pages/content/windo.html Windows Programming]
 
** Dialog Sample
 
** Dialog Sample
 
** Selection Sample
 
** Selection Sample
* [https://cs.senecac.on.ca/~gam666/pages/content/compo.html Component Design]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/compo.html Component Design]
  
 
=== To Do ===
 
=== To Do ===
Line 21: Line 22:
 
* [http://tortoisesvn.net/docs/release/TortoiseSVN_en/index.htmlTortoiseSVN TortoiseSVN Documentation]
 
* [http://tortoisesvn.net/docs/release/TortoiseSVN_en/index.htmlTortoiseSVN TortoiseSVN Documentation]
  
== Week 2 - Sep 11 ==
+
== Week 2 - Sep 9 ==
 
=== This Week ===
 
=== This Week ===
* [https://cs.senecac.on.ca/~gam666/pages/content/direc.html COM and DirectX]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/direc.html COM and DirectX]
* [https://cs.senecac.on.ca/~gam666/pages/content/displ.html Display Modes]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/displ.html Display Modes]
 
** The fwk4gps framework, its branches, and architecture
 
** The fwk4gps framework, its branches, and architecture
 
** Singleton class as an alternative to global variables
 
** Singleton class as an alternative to global variables
Line 37: Line 38:
 
* [http://msdn.microsoft.com/en-us/directx/ DirectX Developer Centre] at Microsoft
 
* [http://msdn.microsoft.com/en-us/directx/ DirectX Developer Centre] at Microsoft
  
== Week 3 - Sep 18 ==
+
== Week 3 - Sep 16 ==
 
=== This Week ===
 
=== This Week ===
* [https://cs.senecac.on.ca/~gam666/pages/content/surfa.html Event Iteration]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/surfa.html Event Iteration]
 
** Messaging, the main application window, and event iteration
 
** Messaging, the main application window, and event iteration
 
** Housekeeping during loss and restoration of focus
 
** Housekeeping during loss and restoration of focus
 
** Housekeeping during re-configuration
 
** Housekeeping during re-configuration
 
** Use the Direct3DDevice9 COM object to access the display device
 
** Use the Direct3DDevice9 COM object to access the display device
* [https://cs.senecac.on.ca/~gam666/pages/content/dtech.html Background Image]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/dtech.html Background Image]
 
** Sprites
 
** Sprites
 
** Textures
 
** Textures
Line 57: Line 58:
 
* [http://msdn.microsoft.com/en-us/library/ MSDN Library] at Microsoft
 
* [http://msdn.microsoft.com/en-us/library/ MSDN Library] at Microsoft
  
== Week 4 - Sep 25 ==
+
== Week 4 - Sep 23 ==
 
=== This Week ===
 
=== This Week ===
 
* Shades of Red application
 
* Shades of Red application
 
** for you to complete - use lecture notes to fill in the details
 
** for you to complete - use lecture notes to fill in the details
 
** reviews the DirectX material covered to date
 
** reviews the DirectX material covered to date
* [https://cs.senecac.on.ca/~gam666/pages/content/trans.html Sprites in Motion]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/trans.html Sprites in Motion]
 
** timing
 
** timing
 
*** upper limit on drawing rate
 
*** upper limit on drawing rate
Line 69: Line 70:
 
** direct-device connectivity
 
** direct-device connectivity
 
*** portal-primitive pattern
 
*** portal-primitive pattern
* [https://cs.senecac.on.ca/~gam666/pages/content/sprit.html Sprites under User Control]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/sprit.html Sprites under User Control]
 
** user action-key mapping
 
** user action-key mapping
 
* Projects
 
* Projects
Line 98: Line 99:
 
** [http://subversion.tigris.org/ Subversion (SVN)]
 
** [http://subversion.tigris.org/ Subversion (SVN)]
 
** [http://tortoisesvn.net/docs/release/TortoiseSVN_en/index.htmlTortoiseSVN TortoiseSVN Documentation]
 
** [http://tortoisesvn.net/docs/release/TortoiseSVN_en/index.htmlTortoiseSVN TortoiseSVN 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.pdf the PDF from here].
+
** [http://svnbook.red-bean.com/ SVN book at red-bean.com] or download [https://scs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/svn-book.pdf the 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]
 
* Wiki
 
* Wiki
Line 108: Line 109:
 
-->
 
-->
  
== Week 5 - Oct 2 ==
+
== Week 5 - Sep 30 ==
 
=== This Week ===
 
=== This Week ===
 
* Review
 
* Review
Line 127: Line 128:
 
*** Action-Key Mapping
 
*** Action-Key Mapping
 
<!--
 
<!--
* [https://cs.senecac.on.ca/~gam666/pages/content/heads.html Heads Up Display]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/heads.html Heads Up Display]
 
** Use the Direct3DFont COM object to draw the font for a text item on the HUD
 
** Use the Direct3DFont COM object to draw the font for a text item on the HUD
 
-->
 
-->
Line 135: Line 136:
 
*** Ensure that all links on the Student List page are working
 
*** Ensure that all links on the Student List page are working
 
** Start the draft of your game proposal
 
** Start the draft of your game proposal
* [https://cs.senecac.on.ca/~gam666/pages/content/2dmat.html 2D Mathematics]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/2dmat.html 2D Mathematics]
 
** Coordinate System
 
** Coordinate System
 
** Vectors
 
** Vectors
Line 158: Line 159:
 
** [http://tortoisesvn.net/downloads Download Page of TortoiseSVN]
 
** [http://tortoisesvn.net/downloads Download Page of TortoiseSVN]
 
** [http://tortoisesvn.net/docs/release/TortoiseSVN_en/index.htmlTortoiseSVN Documentation]
 
** [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.pdf the PDF from here].
+
** [http://svnbook.red-bean.com/ SVN book at red-bean.com] or download [https://scs.senecac.on.ca/~fardad.soleimanloo/oop344/notes/svn-book.pdf the 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 7 ==
== Week 6 - Oct 9 ==
 
 
=== This Week ===
 
=== This Week ===
* [https://cs.senecac.on.ca/~gam666/pages/content/2dmat.html 2D Mathematics (continued)]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/2dmat.html 2D Mathematics (continued)]
 
** Matrix transformations
 
** Matrix transformations
* [https://cs.senecac.on.ca/~gam666/pages/content/3dmat.html 3D Mathematics]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/3dmat.html 3D Mathematics]
 
** Coordinate Systems
 
** Coordinate Systems
 
** Vectors
 
** Vectors
Line 175: Line 175:
 
** Math Library
 
** Math Library
 
** Direct3D Utilities
 
** Direct3D Utilities
* [https://cs.senecac.on.ca/~gam666/pages/content/basic.html Graphics Primitives]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/basic.html Graphics Primitives]
 
** Graphics Primitive display paradigm
 
** Graphics Primitive display paradigm
 
** Vertex buffers
 
** Vertex buffers
Line 199: Line 199:
 
** [http://tortoisesvn.net/downloads Download Page of TortoiseSVN]
 
** [http://tortoisesvn.net/downloads Download Page of TortoiseSVN]
 
** [http://tortoisesvn.net/docs/release/TortoiseSVN_en/index.htmlTortoiseSVN Documentation]
 
** [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://svnbook.red-bean.com/ SVN book at red-bean.com] or download[https://scs.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 7 - Oct 16 ==
+
== Week 7 - Oct 14 ==
  
 
=== This Week ===
 
=== This Week ===
  
* [https://cs.senecac.on.ca/~gam666/pages/content/3dmat.html 3D Mathematics (continued)]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/3dmat.html 3D Mathematics (continued)]
 
** Transformations
 
** Transformations
 
*** World Transformations
 
*** World Transformations
Line 213: Line 213:
 
** Math Library
 
** Math Library
 
** Direct3D Utilities
 
** Direct3D Utilities
* [https://cs.senecac.on.ca/~gam666/pages/content/basic.html Graphics and Cameras]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/basic.html Graphics and Cameras]
 
** Graphics Primitive display paradigm
 
** Graphics Primitive display paradigm
 
** Vertex buffers
 
** Vertex buffers
Line 230: Line 230:
 
** [http://msdn.microsoft.com/en-us/library/ MSDN Library]
 
** [http://msdn.microsoft.com/en-us/library/ MSDN Library]
  
 
+
== Week 8 - Oct 28 ==
== Week 8 - Oct 30 ==
 
  
 
=== This Week ===
 
=== This Week ===
  
* [https://cs.senecac.on.ca/~gam666/pages/content/basic.html Graphics and Cameras (coninued)]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/basic.html Graphics and Cameras (coninued)]
 
** Vertex Data
 
** Vertex Data
 
** Vertex Lists
 
** Vertex Lists
Line 242: Line 241:
 
**** Capabilities
 
**** Capabilities
 
*** APIGraphic
 
*** APIGraphic
* [https://cs.senecac.on.ca/~gam666/pages/content/3dren.html Visibility]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/3dren.html Visibility]
 
** Culling Techniques
 
** Culling Techniques
 
*** Occlusion culling
 
*** Occlusion culling
Line 265: Line 264:
 
** [http://msdn.microsoft.com/en-us/library/ MSDN Library]
 
** [http://msdn.microsoft.com/en-us/library/ MSDN Library]
  
 
+
== Week 9 - Nov 4 ==
== Week 9 - Nov 6 ==
 
  
 
=== This Week ===
 
=== This Week ===
  
* [https://cs.senecac.on.ca/~gam666/pages/content/heads.html Heads Up Display]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/heads.html Heads Up Display]
 
** Programming Issues
 
** Programming Issues
 
** Direct3D
 
** Direct3D
Line 278: Line 276:
 
*** Text Class
 
*** Text Class
 
*** Coordination
 
*** Coordination
* [https://cs.senecac.on.ca/~gam666/pages/content/light.html Lighting]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/light.html Lighting]
 
** Light Components
 
** Light Components
 
** Light Types
 
** Light Types
Line 306: Line 304:
  
 
<!--
 
<!--
* [https://cs.senecac.on.ca/~gam666/pages/content/textu.html Texturing]
+
* [https://scs.senecac.on.ca/~gam666/pages/content/textu.html Texturing]
 
** Texture Coordinates
 
** Texture Coordinates
 
** Magnification
 
** Magnification
Line 324: Line 322:
 
**** Graphic Element
 
**** Graphic Element
 
**** DeviceTexture Element
 
**** DeviceTexture Element
 
  
 
=== To Do ===
 
=== To Do ===

Revision as of 19:26, 29 August 2012


GAM666/DPS901 | Weekly Schedule | Student List | Project Requirements | Teams and their Projects | Student Resources


Weekly Schedule 20123

Week 1 - Sep 2

This Week

To Do

  1. Download Visual Studio 2010 from ACS and install it on your local computer.
  2. Download Tortoise SVN and install it on your local computer.
  3. Download the Dialog and Selection Samples from the Course Repository. (userid: "dpsgam" password: blank [no password])
    • Run Dialog Sample
    • Run Selection Sample

Resources

Week 2 - Sep 9

This Week

  • COM and DirectX
  • Display Modes
    • The fwk4gps framework, its branches, and architecture
    • Singleton class as an alternative to global variables
    • Including interfaces rather than class definitions to minimize header file dependencies
    • Use the Direct3D COM object to interrogate the hardware for the installed options

To Do

  1. Download and install DirectX SDK June 2010
  2. Download the Dialog Modes Sample from the Course Repository. (userid: "dpsgam" password: blank [no password])

Resources

Week 3 - Sep 16

This Week

  • 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
  • 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

To Do

  1. Download the Event Iteration and Background Image Samples from the Course Repository. (userid: "dpsgam" password: blank [no password])

Resources

Week 4 - Sep 23

This Week

To Do

  • Lecture Material
    • Download the Sprites in Motion and Sprites under User Control Samples from the Course Repository. (userid: "dpsgam" password: blank [no password])
  • Workshop
    • Download the ShadesOfRed Sample from the Course Repository. (userid: "dpsgam" password: blank [no password])
      • Complete the coding for this Sample

Resources

Week 5 - Sep 30

This Week

  • Review
    • Windows Programming
      • Windows Functions (WinMain, EnableWindow, AdjustWindowRectEx, SendDlgItemMessage, GetDlgItem, RegisterClass, DialogBox (macro), DestroyWindow, CreateWindow, ShowWindow, UpdateWindow, PeekMessage, TranslateMessage, PostMessage, DispatchMessage, Setcursor, PostQuitMessage, DefWindowProc, WaitMessage, MessageBox)
      • Window Procedures
    • COM Technology
    • Direct3D
      • Direct3D COM Object
      • Direct3D Display Device COM Object
      • Direct3D Texture COM Object
    • Game Programming Aspects
      • Singletons and Interfaces
      • Event Iteration, Messages, and Timing
      • Re-Configuration, Loss and Restoration of Focus
      • Design, Coordination, Graphic Representation
      • Colour and Backbuffering
      • Action-Key Mapping
  • Projects
    • Bringing the Course Wiki Up To Date
      • Create Project Pages for Your Team
      • Ensure that all links on the Student List page are working
    • Start the draft of your game proposal
  • 2D Mathematics
    • Coordinate System
    • Vectors
    • Trigonometry
    • Matrix Transformations

To Do

  1. Add a background image to the ShadesOfRed sample
  2. Add a sprite in motion to the ShadesOfRed sample
  3. Add a second moving sprite to the Sprite in Motion sample
  4. Work on your game proposal and schedule your team's appointment with your instructor (click here to book an appointment)

Resources

Week 6 - Oct 7

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

Week 7 - Oct 14

This Week

  • 3D Mathematics (continued)
    • Transformations
      • World Transformations
      • Camera Transformations
      • Projection Transformations
    • Math Library
    • Direct3D Utilities
  • Graphics and Cameras
    • Graphics Primitive display paradigm
    • Vertex buffers
    • Implementing world, view, and projection transformations
  • Mid-Term Test

To Do

  1. Checkout Graphics
  2. Run Graphics Sample
  3. Create a Pyramid Graphic and introduce several Pyramid Objects into the Design object

Resources

  • Lecture Material
    • DirectX documentation as installed on your local computer
    • MSDN Library

Week 8 - Oct 28

This Week

  • Graphics and Cameras (coninued)
    • Vertex Data
    • Vertex Lists
    • Direct3D Implementation
      • Display
        • Capabilities
      • APIGraphic
  • Visibility
    • Culling Techniques
      • Occlusion culling
        • Painter's algorithm
        • Depth Buffering
    • Direct3D Implementation

To Do

  1. Graphic and Camera
    1. Checkout the Graphic Sample
    2. Run the Graphic Sample
    3. Code a CreatePyramid function for the Graphic Sample using the CreateBox function as a 'template'
  2. Visibility
    1. Checkout the Visibility Sample
    2. Run the Visibility Sample
    3. Add some objects in the distance and add an action to the framework that toggles from Z-buffering to W-Buffering to no buffering

Resources

  • Lecture Material
    • DirectX documentation as installed on your local computer
    • MSDN Library

Week 9 - Nov 4

This Week

  • Heads Up Display
    • Programming Issues
    • Direct3D
      • Display
      • APIText
    • Design
      • Text Class
      • Coordination
  • Lighting
    • Light Components
    • Light Types
    • Programming Issues
    • Direct3D
      • Display
      • APILight
    • Design
      • Light Class
      • Coordination

To Do

  1. Heads Up Display
    1. Checkout Heads Up Display
    2. Run Heads Up Display Sample
    3. Add some text to the sample
  2. Lighting
    1. Checkout Lighting
    2. Run Lighting Sample
    3. Add a spotlight to the sample

Resources

  • Lecture Material
    • DirectX documentation as installed on your local computer
    • MSDN Library