Module Description

This module teaches the main programming and modelling techniques required to implement a non-trivial 3D game. The module has a significant laboratory content and the practical aspects will be taught using a game development platform.

Learning Outcomes

After completing this module, students will be expected to be able to:

1. Demonstrate an understanding of the software architecture of 3D game
2. Design and implement a 3D game
3. Implement AI behaviours for bots or non-player characters
4. Design and implement graphic effects
5. Design and implement game objects (e.g. weapon systems)
6. Demonstrate an understanding of advanced techniques in game development.


- Recap of essential mathematics for 3D games, and how to implement the associated routines, and to use them in existing libraries
- Software architecture for games
- Game content and the content pipeline
- 3D modelling and simulation. Physics modelling. Detecting and reacting to collisions. Lighting and cameras. Scene graphics.
- Game mechanices
- The game loop
- Case study: from design to implementation of a complete 3D game.
- Efficiency tuning
- Tips and tricks for ensuring your game meets the require frame rate
- Analysis of inefficient program code and how to fit it.