Prof: John Lockwood: Fall 1997

ECE 291 Final Project - 3-D attack


Team Members

Team Members :

Ray Yeung (Team Leader) - ryeung@uiuc.edu
- Game Design and Programming

Steve Govenar - govenar@uiuc.edu
- 3-D graphics engine, main programmer

Richard Ming - ming@uiuc.edu
- Intro, Menu Screen, Credit Screen

Daniel Yang - tongyang@uiuc.edu
- Sound

Problem Description

In this multiplayer game, you will be a hovercraft above a 3-d landscape, which will be rendered in real-time. The game will operate in SVGA mode at 640 X 480 X 256. The object of this multi-player only game is to find the opponent(s) and destroy it.This game will be sound blaster compatible with killer music. Additionally, CD-Audio will be implemented if time allows

This program should take approximately 200 to 400 hours depending on what we integrate into the program...

General Game Design

This game will include a 3D voxel landscape displayed using voxels, which is a height field. A 2D matrix will hold the height of each pixel of land. When the matrix is rendered to the screen, the pixel's correct position (height and depth) is calculated and blitted. Clouds will be rendered into the background using a double buffer. The enemy will be a scaled bitmap whose size is dependant on his(her) distance from you. One of the larger challenges that we face is memory management. Displaying SVGA requires much more memory than VGA and bankswitching is also involved. With half the available segments used as a buffer for what needs to be drawn, not too many segments will remain for the map, background, wav files, midi files, etc...

A general description of what needs to be implemented for the game will be listed here. A detailed desciption is provided in our writeup

Sound
- Play a wave file (used in explosions, special sounds, etc)
- Play midi or CD-Audio for background music
- Have a function to turn the sound off

Intro
- Animation (see screen shot)

Menu Screen
- Introduction
- Play Game
- Toggle Sound
- Toggle Midi/CD
- Quit

Credit Screen
- Show our pictures

Game Engine
- Render a background (clouds)
- Render ground using voxels (height field)
- Render missiles, and other opponents
- Check status on missiles

Graphics
- Intro screens
- Bitmap scaler for enemy ship and missiles
- Voxel landscaping (height field)

Sample Screen Shots
  • Intro.gif (10827 bytes)
  • Intro2.gif (8829 bytes)
  • Game.gif (32878 bytes)

Last updated : 11/20/1997