Official course description:

Full info last published 15/05-23
Course info
Language:
English
ECTS points:
7.5
Course code:
KGHIPGP1KU
Participants max:
40
Offered to guest students:
yes
Offered to exchange students:
yes
Offered as a single subject:
yes
Price for EU/EEA citizens (Single Subject):
10625 DKK
Programme
Level:
MSc. Master
Programme:
MSc in Games
Staff
Course manager
Associate Professor
Teacher
Part-time Lecturer
Teacher
Part-time Lecturer
Course semester
Semester
Efterår 2023
Start
28 August 2023
End
26 January 2024
Exam
Exam type
ordinær
Internal/External
ekstern censur
Grade Scale
7-trinsskala
Exam Language
GB
Abstract

Students attending this course will study how to design game code that is scalable and takes into account hardware and software resources.

Description

This course will approach some of the algorithms and ideas that are at the core of the development of modern game engines and expand on technical subjects that were seen in the course "Game Programming".

The student will learn the inner workings of game engines both from a technical and algorithmic perspective and learn how to write high-performance scalable code.
The course will include topics such as:

  • Entity-component systems
  • Game development tools
  • Debugging and profiling
  • Multi-processing
  • Hardware acceleration and SIMD
  • Data-oriented design

Programming is an essential part of the course and the main engine adopted in the course will be Unity for the practical activities and the examples. However, the concepts and principles covered are applicable to any engine and the students are free to choose another technology to work with if they wish, as long as it supports the learning activities.


Formal prerequisites

The essential skills and requirements are:

  • Good programming skill, since the course will propose programming exercises and will require a final project.
  • Knowledge of basic data structures, e.g. linked lists and dictionaries.
  • Foundational understanding of discrete mathematics and linear algebra.

Optimally the student has completed the course "Game Programming".


Intended learning outcomes

After the course, the student should be able to:

  • Use profiling tools to measure code performance
  • Implement systems covered during the course in the context of a game engine
  • Analyse, implement and explain algorithms covered in the course
  • Evaluate code design patterns and critically assess their application in different development contexts
  • Analyse and implement code refactoring to optimise scalability and performance
  • Describe the interplay between code structure and hardware architecture and their impact on performance
Learning activities

Students will be offered weekly lectures and will be working in groups on their course project.

Mandatory activities

There is no mandatory activity

The student will receive the grade NA (not approved) at the ordinary exam, if the mandatory activities are not approved and the student will use an exam attempt.

Course literature

Online documentation, research papers and course slides will be the reading materials for the class.

Student Activity Budget
Estimated distribution of learning activities for the typical student
  • Preparation for lectures and exercises: 25%
  • Lectures: 25%
  • Exercises: 10%
  • Project work, supervision included: 20%
  • Exam with preparation: 20%
Ordinary exam
Exam type:
D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Exam submission description:
The exam will be in groups of 2-3 students. Each group need to submit a report and the source code of their project. At the exam the group will have a joint presentation followed by an individual dialogue of 20 minutes pr. student.
Group submission:
Group
  • 2-3
Exam duration per student for the oral exam:
20 minutes
Group exam form:
Mixed exam 2 : Joint student presentation followed by an individual dialogue. The group makes their presentations together and afterwards the students participate in the dialogue individually while the rest of the group is outside the room.


reexam
Exam type:
D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D2G: Submission for groups with following oral exam supplemented by the submission. Shared responsibility for the report.
Group submission:
Group
  • 2-3 students
Group exam form:
Mixed exam 2 : Joint student presentation followed by an individual dialogue. The group makes their presentations together and afterwards the students participate in the dialogue individually while the rest of the group is outside the room.

Time and date
Ordinary Exam - submission Wed, 20 Dec 2023, 08:00 - 14:00
Ordinary Exam Thu, 11 Jan 2024, 09:00 - 21:00
Reexam - submission Wed, 28 Feb 2024, 08:00 - 14:00
Reexam Fri, 15 Mar 2024, 09:00 - 14:00