Light-Key Puzzle Game

By Richard Nicholson - CS160 Spring'13

Description:


The aim of this project is to complete an interactive dungeon with point lights and beam lights, moving them in combination to activate light sensors to open doors and reach the exits of levels. The dungeon will be presented from a first-person perspective, and the player will physically navigate the levels to find and place lights as approprate.

The game will provide its information through visual placement of objects on the screen, and will introduce keyboard controls via text, preferably as in-world graffiti.

The game will involve a combination of mouse input for camera control and keyboard input for traversal of the dungeon and interacting with light objects.

Goals:

Implementation:

Point lights will calculate the vector between themself and an object (if there is nothing intervening) and use the difference in their positions as the direction vector of the diffuse light.

Beam lights will create a stream of intangible point-light sources until the beam encounters a wall.

Auras will probably involve drawing a large semi-transparent colored polygon over the screen to simulate the light tinting.

Sensors need a way to export to the C++ code the color of light they are receiving to determine if they have been activated. This may involve an export from the shaders (if possible) or else the shading calculations may end up being done in the C++ code and passed to the shaders, or at least copied such that the results of light-tinting can be confirmed.

Add a check to the light-calculations to determine if the light has passed through a window, changing the color accordingly. This may involve a simple projection onto the plane of the window to determine if the light has passed through.

Timeline: