CMSC 23800/53800
Course Project

Specifications

Assets

Here are some assets that you can use in your game.
oval.trk
A simple, hand-generated, oval track.
barbell.trk
A medium sized track generated using a script.

Code

Here is code that you might find useful.
obj-reader.tgz
A C/C++ library for reading OBJ files.
alut-for-macosx.zip
A precompiled version of ALUT with header file for Mac OS X. This version of the library use the C preprocessor to change the prefix of exported symbols to xlut.

Milestones

Milestone 1: design document

An important part of any large software project is a document that lays out the architecture of the application. For the first project milestone, each group should produce a design document that covers (at least) the following issues:

The first milestone is due in class on Tuesday, April 15.

Milestone 2: basic physics engine.

The physics engine is the heart of game, since it manages the state of the player and AI vehicles. Getting a basic engine up and running early will provide a useful tool for developing the other parts of the project.

The second milestone is due on Thursday, April 17.

Milestone 3: basic track loading

The third milestone is to implement a loader for tracks and to start working on an AI agent that can navigate the track and a control model for the user. On the graphics side, developing a 2D rendering of the simulation state will help your debugging and AI development. I recommend supporting graphical annotations for properties such as velocity, steering mode, etc.

The third milestone is due on Tuesday, April 29.

Final project demos

The final project demos will be on Wednesday June 11th at 4:30pm.
Last revised: June 8, 2008.