The basic requirements for the coursework was:
- 3 small scenes
- Include a landscape with real-time lighting
- Include usage of real-time shadows
- Include usage of environment mapping
- Use arrow keys to cycle through scenes / interesting pieces
- Pressing pause key should toggle whether program automatically cycles
- Camera should be moveable with mouse and keyboard
- Usage of scene management techniques for efficiency and correctness of scene rendering
- Display the frame rate on screen
- Pressing the Pause key should toggle whether the program will automatically cycle through the scenes.
- The camera must be able to be freely moved around the scenes with the mouse and keyboard
- Appropriate usage of texture data for colouring and adding detail to your shader calculations
The advanced features that would contribute towards a higher grade were:
- Additional lighting data, moving towards Physically Based Rendering
- Deferred rendering
- Shadow mapping
- Post processing
- Particles