Open main menu

CDOT Wiki β

GAM666/DPS901 Project requirements 20103

Revision as of 21:49, 13 September 2010 by Chris Szalwinski (talk | contribs) (Due Dates)

Due Dates

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



Project Requirements

Your game involves a 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.

This is your last opportunity to revise your proposal, modify your design and obtain your instructor's approval. You will complete your implementation in the third and final phase.

Phase 3

The third phase presents your game with sound and input control to the class. Your presentation includes a demonstration of how the game plays along with an explanation of the innovative aspects that your team members have implemented. Each team has 20 minutes to showcase its game.


Suggested Upgrades to the Framework

Each team will introduce in its game certain upgrades to the Framework presented in class. The nature of these upgrades will vary from team to team. Each team member is responsible for one particular upgrade. Many upgrades are possible. Suggested ones are listed below. The list can be expanded.

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