Official course description:

Full info last published 24/05-24
Course info
Language:
English
ECTS points:
7.5
Course code:
KGPRDES1KU
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
PhD student
Course semester
Semester
Efterår 2024
Start
26 August 2024
End
24 January 2025
Exam
Exam type
ordinær
Internal/External
ekstern censur
Grade Scale
7-trinsskala
Exam Language
GB
Abstract
The course introduces basic theoretical and practical approaches to programming and game engine functionality using the C# language. It is intended for students with little or no prior experience with programming. The course teaches how to build games-related software using a game engine (Unity engine). The teaching emphasizes small programming exercises.
Description

Beyond the designated role of a programmer or a developer, the other roles in a game development team benefit from a basic understanding of programming. Programming skills are especially beneficial for designers whose ideas need to be clear, well-communicated, and, eventually, implementable. Understanding the basics of programming offers designers some of the necessary vocabulary to communicate with programmers and an insight into how programmers work and why they make certain decisions. Moreover, programming is an exciting and empowering tool for creative expression that offers designers new possibilities. It is beneficial that designers can create their own prototypes and software modifications even without a programmer.

The course revolves around practical programming exercises preceded by basic programming concepts.

The students will learn the core concepts related to game programming as well as the key features, tools, and structures of modern game engines. While the Unity game engine will be used in class, the concepts are explained in a way that makes them transferable to other contexts. During the course, the various hands-on programming exercises will help the students build their own portfolio of development projects.

Course curriculum summary:

  • Game engine basics, especially Unity game engine
  • Game loops
  • Data structures and types
  • Control flow
  • Object-oriented programming (OOP)
  • 2D physic
  • Animations
  • Handling user input
  • Finite-state machines

Formal prerequisites
The course is intended for a general audience with no prior programming experience, and taught with an emphasis on small programming exercises. As an introductory course, there are no prerequisites.
Intended learning outcomes

After the course, the student should be able to:

  • Design and implement games using the C# programming language
  • Select and integrate existing code and libraries
  • Apply a range of basic algorithms
  • Communicate software solutions and ideas with peers
  • Predict software functionality and behavior from source code
  • Debug and troubleshoot programming errors
Learning activities

The course is organized around lectures, tutored 'hackathon'- type programming sessions related to students' newly acquired skills, and presentation/feedback sessions around student solutions. During practical exercises, students work individually or in pairs. Practical work will be interleaved with the theoretical lecture. Toward the end of the semester, students will develop one or more games as part of the final exam.

Course literature

Recommended reading:

Nystrom, R. (2014). Game Programming Patterns. United States: Genever | Benning.

Spraul, V. A. (2012). Think Like a Programmer: An Introduction to Creative Problem Solving. United States: No Starch Press.

Gibson Bond, J. (2022). Introduction to Game Design, Prototyping, and Development: From Concept to Playable Game with Unity and C#. United Kingdom: Pearson Technology Group Canada.

Ian Griffiths (2022). Programming C# 10. O'Rilley Media

Student Activity Budget
Estimated distribution of learning activities for the typical student
  • Lectures: 15%
  • Exercises: 45%
  • Assignments: 15%
  • Exam with preparation: 25%
Ordinary exam
Exam type:
D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D22: Submission with following oral exam supplemented by the submission.
Exam submission description:
For the exam, students are expected to submit a curated set of solutions to exercises that are done during the classes. The exam has an oral part where students are asked questions about their written exam submission.
Exam duration per student for the oral exam:
20 minutes


reexam
Exam type:
D: Submission of written work with following oral, External (7-point scale)
Exam variation:
D22: Submission with following oral exam supplemented by the submission.
Exam duration per student for the oral exam:
20 minutes

Time and date
Ordinary Exam - submission Fri, 3 Jan 2025, 08:00 - 14:00
Ordinary Exam Mon, 20 Jan 2025, 09:00 - 21:00
Ordinary Exam Tue, 21 Jan 2025, 09:00 - 21:00