GAM666/DPS901 Weekly Schedule 20113
GAM666/DPS901 | Weekly Schedule | Student List | Project Requirements | Teams and their Projects | Student Resources
Weekly Schedule 20113
Week 1 - Sep 4
This Week
- Windows Programming
- Dialog Sample
- Selection Sample
- Component Design
To Do
- Download Visual Studio 2010 from ACS and install it on your local computer.
- Download Tortoise SVN and install it on your local computer.
- 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 11
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
- Download and install DirectX SDK June 2010
- Download the Dialog Modes Sample from the Course Repository. (userid: "dpsgam" password: blank [no password])
Resources
- DirectX Developer Centre at Microsoft
Week 3 - Sep 18
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
- Download the Event Iteration and Background Image Samples from the Course Repository. (userid: "dpsgam" password: blank [no password])
Resources
- MSDN Library at Microsoft
Week 4 - Sep 25
This Week
- Shades of Red application
- for you to complete - use lecture notes to fill in the details
- reviews the DirectX material covered to date
- Sprites in Motion
- timing
- upper limit on drawing rate
- model coordination
- coordinator-primitive pattern
- direct-device connectivity
- portal-primitive pattern
- timing
- Sprites under User Control
- user action-key mapping
- Projects
- Hints for Using SVN to collaborate on school projects (demo in class)
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
- Download the ShadesOfRed Sample from the Course Repository. (userid: "dpsgam" password: blank [no password])
- Project
- If you don't have an account on this wiki, Create an account. Make sure that your userid is your seneca email id
- Add your name and information to GAM666/DPS901Student List 20113
- Form Teams, identify team members (4-5 members) and add your team and its members to GAM666/DPS901 Teams 20113 Before Thursday 29th.
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library is much easier to navigate
- Project
- Wiki
Week 5 - Oct 2
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
- Windows Programming
- 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
- Bringing the Course Wiki Up To Date
- 2D Mathematics
- Coordinate System
- Vectors
- Trigonometry
- Matrix Transformations
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
- Work on your game proposal and schedule your team's appointment with your instructor (click here to book an appointment)
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library
- Projects
Week 6 - Oct 9
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 16
This Week
- 3D Mathematics (continued)
- Transformations
- World Transformations
- Camera Transformations
- Projection Transformations
- Math Library
- Direct3D Utilities
- Transformations
- Graphics and Cameras
- Graphics Primitive display paradigm
- Vertex buffers
- Implementing world, view, and projection transformations
- Mid-Term Test
To Do
- Checkout Graphics
- Run Graphics Sample
- 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 30
This Week
- Graphics and Cameras (coninued)
- Vertex Data
- Vertex Lists
- Direct3D Implementation
- Display
- Capabilities
- APIGraphic
- Display
- Visibility
- Culling Techniques
- Occlusion culling
- Painter's algorithm
- Depth Buffering
- Occlusion culling
- Direct3D Implementation
- Culling Techniques
To Do
- Graphic and Camera
- Checkout the Graphic Sample
- Run the Graphic Sample
- Code a CreatePyramid function for the Graphic Sample using the CreateBox function as a 'template'
- Visibility
- Checkout the Visibility Sample
- Run the Visibility Sample
- 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 6
This Week
- Heads Up Display
- Programming Issues
- Design
- Text Class
- Coordination
- Direct3D
- Display
- APIText
- Lighting
- Light Components
- Light Types
- Programming Issues
- Design
- Light Class
- Coordination
- Direct3D
- APILight
- Display
To Do
- Heads Up Display
- Checkout Heads Up Display
- Run Heads Up Display Sample
- Add some text to the sample
- Lighting
- Checkout Lighting
- Run Lighting Sample
- Add a spotlight to the sample
Resources
- Lecture Material
- DirectX documentation as installed on your local computer
- MSDN Library