Advanced Graphics for Games

GitHub respository

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