CS 248 - Introduction to Computer Graphics
Autumn Quarter, 2000
Course Staff:
Marc Levoy,
Matt Ginzton, Yu Ping Hu, Hiroshi Ishii, David Koller
The final project for CS248 was to write a 3D video game. To help inspire our students to delve deeply into the wonderful world of graphics, we also held a public competition, with a panel of expert judges selecting the best game from a set of 8 finalists. The winning group won a trip to Siggraph 2001 in Los Angeles, while second and third place won a free dinner at Il Fornaio. We also had a "wackiest, most creative" prize consisting of a Sony PlayStation 2 video game console system, donated by Sony. In addition, all of the finalists were awarded their choice of computer game donated by Electronic Arts.
A total of 72 games were written by the students in the class. Those games which were submitted with accompanying screenshots are included below. Some of the game descriptions also include links to the game executable files for downloading and playing. CS248 students who would like their games included in this listing can contact the maintainer of this webpage.
README
Seasons of War is a 3D networked head-to-head tank combat simulation where
players fight it out over the course of a day. The sun rises in the east
when the players first start out and sets in west at the end of play.
Also, players can choose in which terrain and season to do combat. Each
season has its own environment and landscape; snow in the winter, rain in
the spring, falling leaves in the autumn and clear skies in the summer.
Each player has a full arsenal of weapons including diggers, dirt cannons,
rockets, shells and earthquake. Not only is damage done to the opponent when
hit, but unlike most games, the terrain also takes damage. The different
projectiles can scar, burn, dig and build piles of dirt or any combination
of these effects.
For more information, downloads, and screenshots, check out the
Seasons of War web site.
README
PANZERJÄGER is a first person tank-shooter game. You have to locate and
destroy a number of enemy tanks within a maze with a rocket launcher and a
variety of power-ups that are found in the maze. However, the tanks are not
easy enemies! They are also armed with rockets as well as mines, and they take a few rocket hits before exploding into pieces. People who are familiar
with the game play of Quake will find this game very similar in terms of
control and dynamics. (Hint: try the rocket jump!)
For more information, downloads, and screenshots, check out the
PanzerJager website.
README
You are Spaceman Spiff, held captive in a dungeon deep beneath the planet
Zorg's surface. With your dematterizer, which temporarily swings chunks
of matter into the 5th dimension, try to evade the guards as you collect
teleporter charges to get to the next level -- and eventually to freedom.
Tricks include dematterizing the floor beneath a guard's feet or a wall
to get to secret passages (remember Loderunner?).
README
They killed his best friend...
Now You're Messin' With a Son of a B*tch is a two-player collaborative
fighting game with a dramatic plot right out of a Hollywood script. The
game features extensive cutscene animations, use of motion capture data,
and a moving soundtrack.
README
Spinball is a 3D interactive pinball game. It is a
first-person action game in which you play the role of the pinball in a
classic arcade game. Unlike the real world, you have control over the
ball as well as the flippers, and, subject only to the force of
gravity, you can spin your way to fame, fortune, or at least a
ridiculously high score.
README
Part Pacman, part Snakes, Hyper Rodent is a fast-paced arcade-style game
where you, a mouse, scramble around the board gobbling up pieces of cheese.
To win, you must satisfy your hunger without hitting any walls,
obstacles or the prowling cat. However, you're the victim of a terribly
vicious cycle. As you eat more cheese, you move faster and faster; soon
avoiding walls is no easy feat. While simple to learn, the game is quite
tough to master. The levels get quite challenging, especially when you
start moving at warp speeds through the obstacle-laden maze created with
the packaged level editor.
README
Capture the Dodge Ball is a simple rendering of a physically realistic
simulation of robots throwing balls at each other. Collisions between
objects are predicted analytically rather than timestepped, finding precise
times of collisions, which are themselves accurately modelled. For
entertainment (or a neat screensaver) set the computer to play both sides,
and watch robots float around throwing dodge balls at each other endlessly.
README
Encyclopedia Brown is a short childrens detective. You are Encyclopedia
Brown, recruited by the town to recover the town's escaped monkey. Wander
around the city and search for bananas to find the fugitive monkey!
Jet Pack is a first-person shooter game which features a powerful
level editor for creating arbitrary 3D worlds. The game engine is based
on a BSP tree which is used for view frustum culling, collision detection,
and depth sorting for correct transparency effects. Other game features
include rendered shadows, particle system explosions, a 3D radar,
sound effects, and background music.
README
Kiddyhop is a game intended for very young children (6 months to 2
years). Children of this age like direct interaction and natural
motion. Therefore, a touchscreen is used for direct interaction,
and real-time dynamics provide natural motion for the hopper. Without the
presence of a touchscreen, the mouse can be used to interact with the game,
though it is harder to use since the cursor is disabled. Additional features
in the game include motion blur and a smooth Matrix-like panning effect.
You are in the middle of the Pacific Ocean. You need to pick up all the
golden stars before the enemy boats close in and kill you. Don't be afraid
to blow them to smithereens first!
More information and screenshots for this game are available
here.
Save the universe from Empire oppression by recapturing the five Orbs of
Might from their clutches. You've escaped from their high-security
prison, and commandeered their prototype ship the NightHawk. The only
catch is, you've got limited fuel and air supplies. You have to
navigate from system to system via Wormholes, which can be difficult
(and dangerous)......
boardGame allows the user to to play a board game interactively with
an old man in the screen. The game features skilled artificial
intelligence and NURBS modeling.
A 3D tank dueling contest inspired by the classic game of the same name.
Game features include collision detection, a radar display, and enemy
tank AI.
Ballz is a marble-rolling game in full three space. You are
given a ball in a network of tubes and junctions of different
kinds, and it is your objective to get it to the "Exit" block
located somewhere (far away) in the maze, in as
little time as possible. Use the keys to twist and turn the maze structure
so that gravity pulls the ball where you want it to go. Go
fast, but be careful: only the best will be able to maintain
control of the ball at very high speeds...
Tomb Treasures is a treasure hunt for gems around an Ancient Egyptian
world. Some of the gems are located in pyramids, and there are audio
clues that lead you to the correct place. There are trees that deal you
doses of life or death depending on the pill that they turn into when you
run into them. Obstacles you have to overcome are a 10 foot tall statue
that's constantly chasing you, razor sharp arrows that fly toward your head,
and a pit of lava. Will you survive this treasure hunt?
README
Scorched Earth++ is a 3D version of the classic 2D game "Scorched Earth."
Like the classic, it consists of two players taking turns adjusting the
angle and velocity of their tank's cannon, and firing a projectile at
the other tank. This version takes place in a child's playroom full of
alphabet blocks, which can be blown up during the battle. Game features
include an on-screen control panel, view frustum culling, particle systems,
collision detection, simulated dynamics and sound.
You are one of a number of mages in an ancient mage guild.
Someone has recently eaten the chocolate ears off of the
Magical Holy Bunny of Chocolate, the prized possession of
your guild. Everyone accuses each other of the atrocity,
and soon, there is internal conflict and strife within your
guild. Everyone decides to take this matter outside (this world),
and teleports to the horribly-named Arena in the Middle of Space.
By casting various spells with the central orb floating above the
marble platform in the middle of the Arena in the Middle of Space,
you may hurt or heal mages in the Arena. Your objective is to be
the last one standing.
An evil Dross has frozen the land. How can our hero return the environment
to its once thriving state? Essentially an adventure game in the style of
Nintendo's great Zelda series, but currently done in the 1st person view.
Frost is a single puzzle instance from such a game. The hero is
dropped into an infinite expanse with seemingly no way out. However, there
are spinning crystals that seem to bear a resemblance to Frosts (where the
freezing energy is stored). But they seem to been masking their power.
Our hero is able to drain frosts of their power in her effort to save the
world. The object is to figure out how to escape from this place. The
puzzle is solved when the stained glass porthole becomes lit.
We have a crisis and we need your help!
An eminent scientist is dying of a rare cancer and the only way to
save him is to miniaturize you and put you in a nano-sub which is
injected into his body. Your mission is to zap all the cancer
cells while at the same time avoiding red blood cells, and the
vigilant white blood cells which will attack you at first sight.
Time will be of the essence. Remember, if the patient dies while
you are inside his body, you will perish as well! Good luck!
This game is inspired by the classic 2D version of Joust, in which
the object was to fly around hitting other ostriches on the top of the
head to kill them, while trying to avoid the same fate.
Joust3D relies on the same type of world as in the 2D version, although
the birds are replaced with small spaceships.
Battousai is a 1st person shooter game in which you are currently
infiltrating a cavern base and you need to destroy a mech prototype by
finding it's undetermined weakspot. You have limited ammo, bots are
guarding the facility, and alarm sensors also exist in the compound that
may trigger depending on your actions. Enemies can only hit you if they
have line of sight (likewise for you) and you will need to keep moving to
reduce your chances of getting hit.
Battousai can read Quake3 bsp files, which allows complex map levels to be
created using fully-featured level editing tools.
Oh no...somebody opened a portal to a parallel universe in which evil ducks
rule the world. These ducks have entered our world and they are hungry!
Your objective is to protect a little pond filled with fishes. Hurry, the
fate of these fishes depend on you!
In short, just shoot the little white rounded objects I call the ducks.
In Hovernaut, the goal is to steer your craft across the water and through
all the gates on a level as fast as possible. The game also includes a
level editor program which allows users to design their own track circuits
by specifying gate positions.
In this first-person shooting game, the goal is for Austin to shoot down
the cannons and Big Al's that are occupying a castle.
Austin moves around in a castle with three rooms
and two passages and tries to save himself from the cannons and Big Al
that track him and shoot bullets at him. Austin has finite amount of
Mojo(energy) and bullets to accomplish his task. He has access to two
kinds of guns, a pistol and a machine gun. He can collect coins, bullets
and burgers to replenish his Mojo and stock of bullets. Austin may find
them lying around in rooms, and may even discover one of these by shooting
down a cannon or the bomb.
Antwarz is a networked multiplayer game in which the object is to
beat up other ants and eventually kill their queen. The game features
four different types of ants with different attributes; the player with
the last surviving queen ant is the winner.
Minesweep 3D adds an extra viewing dimension to the ubiquitous 2D Minesweeper
game. The game includes an IK editor which allows the user to manipulate
character models and create inverse kinematic chains for animation of
the minesweeper character. Other game features include a particle
system engine for exploding mines, a heads up display (HUD), and
atmospheric background music.
C.A.R.S. is a multiplayer networked game in which players race
their opponents in levitating cars over a procedurally detailed terrain.
Game features include simulated vehicle dynamics, advanced culling
and level of detail control, and dynamic control panels for the
parametrically-modeled cars.
Tet3D is a 3D version of the game Tetris; instead of moving and
rotating pieces in 2-dimensional space, the player is able to
manipulate the 3D pieces in full 3-dimensional space. The viewpoint
can be freely rotated on a sphere around the 3D space, and
two supplemental orthogonal projections of the world are displayed
to aid the player. Additional features include game sounds and
oriented bounding box techniques that detect collisions between
the 3D pieces as if they were solid objects.
Contents:
1st place: Seasons of War
Dan Coleman,
George Gaxiola,
Dan Windrem
Download Linux or Win32 versions of
the game
2nd place: PanzerJager
Kun Bian,
Wei Koh,
Yan Liu
panzer_no_music.zip (PC version
of the game without music data files included)
3rd place: Spaceman Spiff: Escape from Zorg
Robert Bridson
spiff.tar.bz2 (sources plus
Linux/Pentium executable)
Most Creative/Wackiest Prize: Now You're Messin' With a Son of a B*tch
Yuan Ren,
Yuning Woo
sob.zip (PC version of game)
They kidnapped his girlfriend...
Their mistake.
John Rambo and Catherine Zeta-Jones team up for the first time ever
in the computer gaming event of the year:
Now You're Messin' With a Son of a B*tch.
Finalist: Spinball
Alexei Kosut,
Greg Parker
spinball.tar.gz (Linux version of game)
Finalist: Hyper Rodent
Matt Garr,
Brent Villalobos
rodent.tar.gz (Linux version of game)
Finalist: Capture the Dodge Ball
Chris Unkel
flag.zip (PC version of game)
Finalist: Encyclopedia Brown
Greg Marsden
urban.tar.gz (Linux version of game)
Jet Pack
Aaron Bradley,
Andrew Bradley,
Cesar Sanchez
Kiddyhop
Sean Bailey
kiddyhop.zip (source code and PC version of game)
P.T. Cruiser
Ben Reichardt,
Alex Pekker
Wormhole Runner
Barbara Sweet
boardGame
Tsun-Tsun Ho
Spectre
Dave Clausen
Ballz: The Descent
Adam Driscoll,
Jonathan Gips
Tomb Treasures
Danny Kahn,
Fan-Tai Pu
Scorched Earth++
Andy Kuo,
David Merrill,
Xinru Woo
ScorchedEarth++.zip (PC version
of game)
mageDuel
Donald Ying
Frost
Eric Bailey
Fantastic Voyage
Gek Siong Low,
Arthur Amezcua
Joust3D
Bryan Alfaro
Battousai
David Chan,
Keith Lee
Ducks Attack
Lukito Muliadi
Hovernaut
Lucas Ryan
Austin Powers, the Game of Mystery
Pranav Kantawala,
Michael Michael,
Jairam Ranganathan
Antwarz
Michael Ward,
Christiaan Royer
Minesweep 3D
Michael Madison,
Michael Sharps
C.A.R.S.: Another Racing Spectacle
Udayan Kanade,
Mike Nidel,
Pooja Trivedi
Tet3D
Hansong Huang,
Tao Jiang