Prometheic

            Prometheic is a 3rd-person puzzle-based game in which the player controls a fire elemental trying to get home. The player will find him or herself in conflict with the environment on a regular basis and must attempt to overcome these limitations. The use of fire will play an important role, as will the exercise of the player's puzzle-solving skills
            The game was developed by four students in 10 weeks for the 3-D Graphics Programming Course.

Development Environment


Story

           In the early days of Greece, the Titan Prometheus brought fire to the humans and was punished thoroughly for it. But he couldn't have brought them fire without bringing a fire elemental to the planet – aptly named “Prometheic”. In order to tame it, he needed to restrict its power and imprison it in a remote part of the planet. But Prometheus didn't account for global warming, which has freed this elemental from its prison.

            Prometheic awakes in an unusually empty land in which the people and creatures of the area were driven to move elsewhere. They did not understand why they felt such an urge to leave the area, but it was due to the hidden presence of the fire elemental. The only evidence that they were ever around is the abandoned machines Prometheic finds. As nobody has been around for a number of years, overgrowth is rampant and the presence of nature rather than man has become very obvious. Prometheic also awakes alone, as Prometheus is still cursed to have his liver eaten daily and therefore otherwise engaged. While the Hellenic gods and goddesses do exist in this world – as do elementals and a host of other creatures unfamiliar to humans – the tales of Heracles were actually all myths.

            Prometheic doesn't care about Prometheus' plight, and nobody on the planet knows that it even exists. Of course, fire elementals wield fire, so no human could stop it anyway. But thousands of years of imprisonment has rendered it weak, and it can no longer command infernos at will. Prometheus' restrictions can be removed if it returns to Mount Olympus, and so this elemental needs to find its way home. It doesn't hurt, of course, that its friends have been waiting for this moment for millennia. Perhaps it will even run into some of them...


Features

The game is split up into 4 areas.  Each area has a puzzle which needs to be solved in order to progress to the next one.
Apart from using fireballs to interact with the environment the player can also pick up objects and place them in appropriate positions.  All interactive objects glow, making them easier to spot.
In debug mode, the game has a Level editor, which can be use to place the objects ( catapults, boulders, water, trees, etc) in each of the four areas area. 

The protagonist
Destroy all twigs !!

Catapult catapult
The catapult

Water
Water - generated  in the geometry shader

Chimney
Puzzle 3 solved

the abyss the abyss
                            The falling boulders                                                                                                                                                                                     Falling boulders and the abyss

dynamite
Grab the dynamite

before after
Before                                                                                                                                                                               After

balloon left without you with the balloon
   Balloon left without Prometheic                                                                                                                                                 In the balloon



credits
Credits

Debug Mode Screenshots
debugmode with editor option bouding boxes
                                Debug mode with Terrain editor option                                                                                                                                                                     Bounding boxes and low-poly models in debug mode

first twowireframe
                                       Birds-eye view of the first two areas                                                                                                                                                                         Second area in Wireframe mode.  The White grid is water

editor
                                                                                  The final area in editor mode


Work Done


I was responsible for the following tasks in the game

  1. Initial Rendering framework:  Created a 3D rendering engine in DirectX10
  2. Terrain Manager:  Support for generating 3-D terrains from a heightmap.  Managing Terrain Rendering.
  3. HLSL Programming and Setup:  Support for Billboards, Water, Collision Detection Boxes in Debug mode and other basic shaders
  4. Mesh Manager :  Using Autodesk's FBX SDK to parse .FBX files and create and render Meshes
  5. Level Design :  Designed Heightmap files for each area.  Created Blendmaps texturing the terrains.
  6. Resource mangers :  For managing Textures, Shaders and Terrains.
  7. Code Management and Cleanup :  Fixing Memory leaks, integrating systems and managing the SVN.

Conclusion

Overall, I was satisfied with the final product.  We were able to put in all the features we had planned for.  I was able to learn and implement quite a few popular graphics techniques like using Billboards, Lighting models, Mesh Loading, Particle Systems and Geometry Shaders.

There are a few improvements that could be made.  The game engine framework could be improved on to be more robust.  I also feel we needed more gameplay variety and puzzles.  I also wanted to implement a few more graphical enhancements and systems like Shadow Mapping and a LOD system for Terrains.

Download Game Here - look for the docs sections for the installation manual


Videos: