Battle for Atlantis

From WhiteStar 02

Jump to: navigation, search
Seascape.
Seascape.
Particle system demonstration.
Particle system demonstration.
The sunken ship.
The sunken ship.

[edit] Description

3D underwater exploration game developed over the course of the whole term. Written in a team with 5 other people. My primary jobs were gameplay programming and physics programming, but I ended up doing some 3D work, some graphics engine work (the frustum culling mostly), the terrain engine and terrain generation, the level and terrain file loaders, etc.

[edit] Gameplay features

  • Piloting a submarine, you must find treasures buried in underwater ruins, including sunken ships and the lost city of Atlantis!
  • Large underwater seascapes to explore!
  • Your submarine has limited oxygen and cargo space. You must return to your boat at the surface to drop off your treasure and fill up your oxygen tanks.
  • Your submarine has a full-featured HUD including readouts for damage, oxygen, cargo capacity and speed, as well as a radar to spot treasures from far away.
  • Different treasure types, each with a different point value.
  • Power-ups that give you an extra boost of speed, refill your oxygen tanks and more!
  • Multiplayer enabled. Get the treasure before your opponents do!

[edit] Technical features

  • Completely modular graphics engine, entirely shader-driven (PS and VS 2.0+).
    • Normal maps, detail maps.
    • Distance fog.
    • Underwater caustic effect (light patterns created by the waves) using animated textures.
    • Blur and bloom shaders written but not used in the final game.
  • Particle systems with a variety of forces and particle types.
  • Large terrain generated using free tools.
  • Physics engine based on ODE with custom wrappers to simplify interface with the game engine.
  • Collision detection also based on ODE.
  • Sound engine for background music and triggered sound effects.
  • Basic network support which allowed two players to compete for treasure. More players could be added simply by editing the level file and adding a new player submarine and home boat.
  • Completely data-driven: files describe the level, objects, terrain, etc. and no recompilation is needed to make a new level and play it in the game.
  • 3D Studio Max model exporter


See some other school projects

Personal tools