Official course description:
Full info last published 15/11-20

Algorithms for Games Development

Course info
Language:
English
ECTS points:
7.5
Course code:
KGALGAD1KU
Participants max:
40
Offered to guest students:
yes
Offered to exchange students:
yes
Offered as a single subject:
yes
Price (single subject):
10625 DKK (incl. vat)
Programme
Level:
MSc. Master
Programme:
MSc in Games
Staff
Course manager
Assistant Professor
Teacher
Postdoc
Teacher
Part-time Lecturer
Teaching Assistant
Assistant Lecturer
Course semester
Semester
Forår 2021
Start
1 February 2021
End
14 May 2021
Exam
Exam type
ordinær
Internal/External
ekstern censur
Grade Scale
7-trinsskala
Exam Language
GB
Abstract

Students attending this course will study some of the core algorithms and systems related to game development.

Description

This course will approach some of the algorithms and ideas that are at the core of the development of digital games and expand on technical subjects that were seen in the course "Game Programming".
The course will build on many topics relevant to game development, such as:

  • Splines, interpolation and trajectories;
  • Navigation and path finding;
  • Algorithmic complexity and space partitioning;
  • State machines and state transitions;
  • Math for games, including geometric transformations;
  • Hierarchical animation;
  • Motion capture;
  • Forward and inverse kinematics;
  • Character skinning and geometric representation;
  • Procedural content generation.

In the course project, the students will be supervised in the acquisition of specialized knowledge in a related area of their choice. Example topics include:

  • Rigid body dynamics;
  • Animation blending;
  • Motion matching.

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, such as 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:

  • Implement, use and explain basic geometric algorithms and objects, such as space partitioning, path finding, splines and Voronoi diagrams.
  • List and describe the basic ideas and algorithms in procedural content generation.
  • Explain how geometric transformations are used to place and move elements in a scene and drive hierarchical animation.
  • Program a basic character animation system.
  • Implement and explain basic inverse kinematics algorithms.
  • Describe the motion capture pipeline, and explain how it is used to animate game characters.
  • Analyze, implement and explain a topic of their choice. The topic must be related to the core content of the course.
Learning activities

14 weeks of teaching consisting of lectures, exercises and supervision.

Besides traditional lectures the class will also include class-based discussions and small quizzes to make the students reflect about the topics.

Exercises are not handed in, but their solutions are published after one week. Mandatory activities/assignments are handed in.

Students are responsible for attending weekly lectures and then working in their groups independently, yet supervised, on their course project.

Mandatory activities

The students must hand-in four assignments during the semester. The assignments cover important topics in the course and are designed to prepare the students for the development of the course project. They also serve as an opportunity for the students to receive feedback on their work, and for the teachers to detect and address problems in the course or classes.

All mandatory activities must be approved before the last class, hand-in deadlines are found on LearnIt. 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.

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

Chapters from different books as well as research papers will compose the readings.

Student Activity Budget
Estimated distribution of learning activities for the typical student
  • Preparation for lectures and exercises: 20%
  • Lectures: 15%
  • Exercises: 10%
  • Assignments: 20%
  • Project work, supervision included: 24%
  • Exam with preparation: 11%
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.

Time and date
Ordinary Exam - submission Mon, 31 May 2021, 08:00 - 13:55
Ordinary Exam Mon, 14 Jun 2021, 09:00 - 21:00
Ordinary Exam Tue, 15 Jun 2021, 09:00 - 21:00
Reexam - submission Wed, 14 Jul 2021, 08:00 - 14:00
Reexam Tue, 17 Aug 2021, 09:00 - 20:55