course-details-portlet

IMT3603

Game Programming

Credits 7.5
Level Third-year courses, level III
Course start Autumn 2026
Duration 1 semester
Language of instruction English
Location Gjøvik
Examination arrangement Project work

About

About the course

Course content

The lecture topics will focus on what the students need to know to to progress in the development of games using modern technology. The topics can include:

  • Design patterns
  • Graphics
  • Physics in games
  • Character development
  • Animation
  • Game specific AI
  • Implementing game mechanics
  • Game production process
  • Project management in teams
  • Memory management
  • Algorithm efficiency
  • Advanced programming techniques

Learning outcome

On completion of this course the students have:

Knowledge

The students can:

  • explain the architecture and core subsystems of modern game engines (rendering, physics, input, animation, scripting, asset pipeline)
  • describe how common design patterns (component-based design, state machines, event systems, ECS) are used in game programming
  • explain how version control and continuous integration / continuous delivery (CI/CD) support game development workflows
  • discuss typical approaches to game-specific AI (e.g. finite state machines, behaviour trees, navigation) and their impact on gameplay
  • analyse social, cultural, and ethical issues in game development, including representation, player well-being, monetisation models, and online behaviour

Skills

The students can:

  • design, implement, and iteratively refine a small but complete computer game as part of a group
  • estimate the amount of effort required to implement various features in a computer game
  • use project management tools to plan and monitor the development work
  • integrate and manage assets (graphics, audio, animation) and implement basic UI/UX flows, including rapid GUI prototyping of interactions
  • ask focused, critical questions about games, their mechanics, and the development process, and use the answers to guide design and implementation

General Competence

The students can:

  • collaborate effectively in a development team, including taking roles, handling dependencies, and reflecting on group communication and dynamics
  • give and receive specific, constructive criticism on game design, code, and player experience in a professional manner
  • document the game and its development process (design documents, technical notes, changelogs) and present the results in both written and oral form
  • reflect on their own strengths and weaknesses as game programmers and team members, and identify concrete steps for further professional development

This is a group project and so a significant part of the learning outcomes are related to working in a group and being able to scope the time taken to design and implement a game.

Learning methods and activities

  • Lectures
  • Exercises
  • Project work

Further information: Students will work in groups to develop a game. In-class exercises and lectures will be linked to the current stage of the development process.

Further on evaluation

Assessment forms: One large project, which will include regular presentations of progress, and a video of the gameplay of the final product and a video description of the code developed. In cases where groups break down and are unable to work together students will be given an oral exam to assess their ability and learning. Re-sit: None

Specific conditions

Admission to a programme of study is required:
Computer Science - Engineering (BIDATA) - some programmes
Programming (BPROG)

Course materials

Online materials and tutorials. Suggested reading will be provided at the beginning of the course.

Credit reductions

Course code Reduction From
IMT3601 7.5 sp Autumn 2022
This course has academic overlap with the course in the table above. If you take overlapping courses, you will receive a credit reduction in the course where you have the lowest grade. If the grades are the same, the reduction will be applied to the course completed most recently.

Subject areas

  • Information Technology and Informatics

Contact information

Course coordinator

Lecturers

Department with academic responsibility

Department of Computer Science

Examination

Examination

Examination arrangement: Project work
Grade: Letter grades

Ordinary examination - Autumn 2026

Project work
Weighting 100/100 Exam system Inspera Assessment