GAM666/DPS901 Project requirements 20103

From CDOT Wiki
Revision as of 22:06, 13 September 2010 by Chris Szalwinski (talk | contribs)
Jump to: navigation, search


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


Due Dates

Proposal outline and team members selected September 21
Proposal completed and members roles selected September 28
Approval meeting with instructor Week of October 10 or before
Draft game submission and project review November 16
Final game presentation December 7



Project Requirements

Your game must involve real-time audio-visual experience in some sort of 3-D world. The user must be able to control at least some aspects of the game with a controller, and there must be some use of sound, both in the background and in response to some action in your game. The user should have control over which display devices, resolution and input devices are used at any time during the game. Your game may however offer only a subset of the available resolutions and input devices. Finally, your design code must differ significantly from the samples presented in class and you must identify the unique elements of your code in your submissions. Each game is a team effort and each member must contribute their own work in a selected area of their choosing. All members should contribute to the design part of the assignment.

Phase 1

The first phase is a 200-300 word informal, written proposal of what you intend to implement in your game: what you imagine your game doing. Your description should include one or more illustrations of your design. The illustrations may be hand-drawn and scanned. Included in your illustrations should be a map of what you'd like the 3D world of your game to look like, with 3-dimensional coordinates of all of the major points in the world. Your map should include all of the "actors" (moving objects) in the world. You should attempt to make the coordinates as realistic as possible, being aware that you may need to scale them up or down as you implement your design in code. Accompanying your proposal should be the Sprite Animation Sample from the class notes. Your instructor should be able to run this sample directly by opening the executable directly.

The purpose of this first phase is to give your instructor some idea of the scope and depth of your design: whether what you intend is too simple, too complex or about right and to ensure your instructor that you can work with your SVN repository and are ready to focus on implementing your design. Your description should enable your instructor to give you corrective feedback and to iron out any glitches with the software.

Your team must arrange a time and date to meet with your instructor to discuss your proposal and to commit the different responsibilities of the team members. This meeting should take place no later than week 6 of the semester.

Phase 2

The second phase releases a draft of your game design without sound or input control.

The purpose of this second phase is to create a draft of your design and to refine your proposal. You will have the opportunity to complete your implementation in the third and final phase.

Phase 3

The third phase presents your game to the class. Your presentation will include not only a demonstration of how the game plays but also an explanation of the innovative aspects that your team members have introduced. Each team will have 20 minutes to showcase its game.


Suggested Upgrades to the Framework

Each team will introduce upgrades to the Framework presented in class. The nature of the upgrades will vary with each design. Each team member will be responsible for one specific upgrade. Parts of the framework that might be upgraded are listed below. This list is by no means exclusive.

  • required upgrades are in bold
  • challenging upgrades marked *

Modeling (Design Component)

  1. game play logic (all members)
  2. import a model script

Design Units (Scene Component)

  1. design new objects for the scene
  2. create billboards – clouds, smoke, vapor trails
  3. add stock objects (requires changes to GraphicsCard Component also)
  4. detect collisions between objects in a scene *

Viewpoints (Viewing Component)

  1. comprehensive camera motion

3D Graphics (GraphicsCard Component)

  1. improve texturing
  2. introduce fog, emissive light
  3. create new graphics representation for new objects in the scene
  4. implement an OpenGL 3.0 option *
  5. Direct2D for fonts *

Sound (SoundCard Component)

  1. sound effects on buffers and optimizing performance
  2. replace DirectMusic with DirectSound only
  3. replace DirectMusic and DirectSound with Xaudio2 *
  4. create an Open Audio option *

User Interface (Input and UserDialog Components)

  1. improve controller input and user dialog
  2. action mapping *
  3. replace DirectInput with Xinput *

Framework (Cross-Component)

  1. context – implement a database
  2. save the current state of the model to a file and restore from a file
  3. performance optimizations *