Image for

Development of 3D games

  • Class 15
  • Practice 30
  • Independent work 105
Total 150

Course title

Development of 3D games

Lecture type


Course code






Lecturers and associates

Course overview

This module introduces students to 3D game development concepts and the tools and ways of thinking required to create a prototype of a 3D computer game.

This module is core to Game Development subspecialisation and provides the foundation for a wide number of programming modules that students will take in the following semesters. Skills learnt in this module will contribute significantly to students’ development as professionals in respecting fields.

Students will learn:
• How to implement first-person controller, third-person controller and isometric perspective games controller.
• How to implement intermediate sequences with dynamic camera.
• About different types of lighting (real-time, baked, reflective, emitting etc.)
• How to implement efficient pathfinding algorithms.

The module is taught in C
programming language and Unity and Visual Studio software development tools. The module assessment is based on solving a series of smaller practical tasks in the defined programming language and software development tool and on individual student game development projects.


Essential reading:
1. Bond, J.G. (2014) Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#. Boston: Addison-Wesley Professional.

Recommended reading:
1. Borromeo, N.A. (2020) Hands-On Unity 2020 Game Development: Build, customize, and optimize professional games using Unity 2020 and C#. Birmingham: Packt Publishing.

Download student guide

Minimal learning outcomes

  • Construct first and/or third person controllers and controllers for isometric computer games.
  • Recommend and implement camera control and animation in a 3D computer game and construct intermediate sequences with a dynamic and changeable camera.
  • Recommend and animate a 3D object using a complex state machine.
  • Implement baked, real-time, reflective, emitting, and indirect lighting in a 3D computer game.
  • Use and optimize pathfinding algorithms in a 3D computer game.

Preferred learning outcomes

  • Construct complex first and/or third person controllers and advanced controllers for isometric computer games.
  • Create complex interactive sequences based on multiple cameras and signals, which can react based on the current state of the game.
  • Develop and use a complex custom hierarchical finite state machine to drive the behaviour of characters.
  • Modify lighting programmatically, based on the needs of the situation in the game and optimize and modify generated lightmaps.
  • Analyse game requirements, choose and implement most suited pathfinding algorithm for specific need.