DM842: Computer Game Programming (10 ECTS)

STADS: 15015601

Master's level course

Teaching period
The course is offered when needed.

Teacher responsible
Rolf Fagerberg, Professor, Ph.d.
Tlf.: 6550 2382 Email:

Additional teachers
Marco Chiarandini, Lektor,
Tlf.: 6550 4031 Email:

Group Type Day Time Classroom Weeks Comment
Common I Monday 08-10 IMADA Seminarrum 37,37
Common I Monday 09-11 IMADA Seminarrum 43,43
Common I Monday 10-12 IMADA Seminarrum 44,44
Common I Wednesday 12-14 IMADA Seminarrum 36,37,38,39,40,41,43,44,45,46,47,48,49,50,51
Common I Thursday 14-16 IMADA Seminarrum 36,38,39,40,41,45,46,47,48,49,50,51
Show entire timetable
Show personal time table for this course.

Ubegrænset deltagerantal.


Academic preconditions:
The content of DM507 Algorithms and Data Structures must be known.

Course introduction
  • To give the participants knowledge of the principles and methods from mathematics and computer science underlying 3D graphics as used in computer games.
  • To give the participants knowledge of the methods underlying movements and actions of computer controlled objects and characters in computer games.
  • To give the participants knowledge of the principles and methods from mathematics, physics, and computer science underlying physics simulation and collision detection in computer games.

Expected learning outcome
After the course, the student is expected to be able to:
  • Explain the techniques from the curriculum in clear and precise language.
  • Implement the techniques from the curriculum in example programs. 
  • Describe the implementation work in a precise language and in a structured way.
Subject overview
  • The graphics pipeline, rendering, the mathematics of 3D computer graphics (including homogeneous coordinates, transformations, projection, quaternions), clipping, culling, lighting, shading, texturing, polygonal techniques, level-of-detail.
  • Rulebased AI, finite state machines, fuzzy logic, goal-driven behaviour, strategic decision making, steering, path-finding, flocking, attraction and detraction.
  • Linear and angular forces and momenta, rigid body motion, collision detection (including intersection tests, bounding volumes, bounding volume hierarchies, spatial partitioning and collision culling) and collision response.
    Meddeles ved kursets start.

This course uses e-learn (blackboard).

Prerequisites for participating in the exam

Assessment and marking:
  1. Project. Evaluated by internal censorship on a pass/fail basis. (15015612)
  2. Oral exam. Evaluated by external censorship by the danish 7-mark scale (10 ECTS). (15015602)
Expected working hours
The teaching method is based on three phase model.
Intro phase: 56 hours

Educational activities

This course is taught in Danish or English, depending on the lecturer. However, if international students participate, the teaching language will always be English.

Course enrollment
See deadline of enrolment.

Tuition fees for single courses
See fees for single courses.