F21GP Computer Games Programming

Dr Mohammad HamdanBen Kenwright

Course co-ordinator(s): Dr Stefano Padilla (Edinburgh), Dr Mohammad Hamdan (Dubai), Ben Kenwright (Edinburgh).


To develop programming skills and techniques specific to the area of 2D and 3D computer games

Detailed Information

Course Description: Link to Official Course Descriptor.

Pre-requisites: C++ programming skills.

Location: Dubai, Edinburgh.

Semester: 2.


  • Computer Games Design Concepts (Genres, Narrative and Fun).
  • Elements of Game Design (Formal, Dramatic and System Dynamics).
  • Character and World Design.
  • Design Programming Patterns (Input, loops, structures, objects and optimisation).
  • Games Creation Concepts (Conceptualisation, Prototyping, Playtesting).
  • Game-state, simulator, renderer, (hierarchical) controllers.
  • Tools, environments and coding practices– e.g. graphics, C++ and engines.
  • 2D and 3D game programming techniques.
  • Physically-based modelling, particle systems, flocking.
  • Obstacle avoidance and path planning.
  • Group movement.
  • Learning and adaptation in games.
  • Action and behaviour selection.
  • Procedural Generation.
  • Course summary and review.

Learning Outcomes: Subject Mastery

Understanding, Knowledge and Cognitive Skills Scholarship, Enquiry and Research (Research-Informed Learning)

  • Critical appreciation of game theory and computer games history, genres and impact
  • Ability to critically evaluate game design concepts, elements and characters.
  • Critical understanding of available tools and their application.
  • Knowledge of algorithms for path planning and navigation
  • Understanding and knowledge of physically-based modelling in games and selection of techniques.
  • Understanding and knowledge of AI techniques in games and selection of techniques.
  • Ability to design and implement a small-scale game using 2D and 3D tools.
  • Practical skills in graphics and AI programming in the computer games context

Learning Outcomes: Personal Abilities

Industrial, Commercial & Professional Practice Autonomy, Accountability & Working with Others Communication, Numeracy & ICT

  • Representation of, planning for, and solution of problems.
  • Ability to plan, design, prototype critically evaluate and communicate a game.
  • Ability to think and plan in three dimensions.
  • Team working skills.

Assessment Methods: Due to covid, assessment methods for Academic Year 2021/22 may vary from those noted on the official course descriptor. Please see:
- Maths (F1) Course Weightings 2021/22
- Computer Science (F2) Course Weightings 2021/22
- AMS (F7) Course Weightings 2021/22

SCQF Level: 11.

Credits: 15.