Skip to main content

Game Engine Programming (5 op)

Toteutuksen tunnus: TTC8840-3002

Toteutuksen perustiedot


Ilmoittautumisaika

01.08.2022 - 25.08.2022

Ajoitus

29.08.2022 - 16.12.2022

Opintopistemäärä

5 op

Virtuaaliosuus

5 op

Toteutustapa

Verkko-opetus

Yksikkö

School of Technology

Toimipiste

Lutakko Campus

Opetuskielet

  • Englanti

Paikat

0 - 70

Koulutus

  • Bachelor's Degree Programme in Information and Communications Technology

Opettaja

  • Jani Immonen

Objectives

Purpose:
In the Game Engine Programming course, you will learn about the fundamental concepts, architecture, design, and programming of a multi-platform game engine. You will create a game engine from scratch using industry-standard programming languages and tools, covering topics such as the game loop, graphics pipeline, input handling, physics simulation, audio playback, scripting, and asset management. You will also learn about game engine architectures, design patterns, and optimization techniques. The course will provide an overview of the game industry and emerging trends in game engine development.

EUR-ACE Competences:
Knowledge and Understanding
Engineering practice
Communication and team-working
Multidisciplinary competences
Engineering practice
Investigations and information retrieval

Learning outcomes:
Throughout the course, you will work on hands-on programming assignments, creating a fully functional game engine and games using the engine. By the end of the course, you will have a solid understanding of game engine development and the skills needed to create high-quality games for multiple platforms.

Content

Kurssi esittelee pelimoottorien arkkitehtuurin, suunnittelun ja ohjelmoinnin. Kurssilla käsitellään aiheita:
- Pelien ja muiden tosiaikaisten ohjelmistojen tekninen suunnittelu.
- 3D grafiikan perusteet
- Hierarkiset järjestelmät
- Viestijärjestelmät
- Parallelismi.
- Linearialgebra.
- Näkyvyystarkastukset ja optimointi.
- Törmäystarkastukset- ja reaktiot.
- Muut komponentit, kuten syöttölaitteet ja äänet.

Learning materials and recommended literature

Verkko-oppimisympäristössä julkaistava sähköinen materiaali.

Teaching methods

- luennot
- itseopiskelu
- verkko-opinnot
- pienryhmätyöskentely
- harjoitustyöt
- oppimistehtävät

Exam dates and retake possibilities

Mahdollinen tentin ajankohta ja toteutustapa ilmoitetaan opintojakson ensimmäisellä kerralla.

Alternative completion methods

Hyväksilukemisen menettelytavat kuvataan tutkintosäännössä ja opinto-oppaassa. Opintojakson opettaja antaa lisätietoa mahdollisista opintojakson erityiskäytänteistä.

Student workload

Yksi opintopiste (1 op) tarkoittaa keskimäärin 27 tunnin työtä.

- luennot 50 h
- tehtävät 55 h
- itsenäinen työskentely 30 h
Yhteensä 135 h

Further information for students

Kurssi arvioidaan pisteytettyjen tehtävien perusteella.

Evaluation scale

0-5

Evaluation criteria, satisfactory (1-2)

Hylätty 0: Opiskelija ei täytä kurssille asetettuja vähimmäisvaatimuksia.

Välttävä (1): Opiskelija tuntee kurssin aikana käsitellyt perusaiheet. Opiskelija osaa kirjoittaa ohjelmia ja käyttää olemassa olevia esimerkkejä.

Tyydyttävä (2): Opiskelija ymmärtää kurssin aikana käsitellyt perustiedot. Opiskelija ei pysty etsimään olennaista tietoa itsenäisesti. Opiskelija osaa kirjoittaa ohjelmia, mutta käyttää pääosin olemassa olevia esimerkkejä.

Evaluation criteria, good (3-4)

Hyvä (3): Opiskelija ymmärtää tärkeimmät kurssin aikana käsitellyt aiheet ja osaa hyödyntää tätä tietoa perustason tapauksissa. Opiskelija osaa hyödyntää tietoa kurssin aiheista. Opiskelija osaa kirjoittaa yksinkertaisia ohjelmia.

Kiitettävä (4): Opiskelija ymmärtää kurssin tärkeimmät aiheet ja osaa hyödyntää tätä tietoa yleisimmissä tapauksissa. Opiskelija osaa etsiä ja ymmärtää tietoa kurssin aiheista. Opiskelija osaa kirjoittaa sujuvasti koodia .

Evaluation criteria, excellent (5)

Erinomainen (5): Opiskelija ymmärtää kaikki kurssin aikana käsitellyt aiheet ja osaa käyttää niitä innovatiivisesti myös haastavissa ja monimutkaisissa tilanteissa. Opiskelija osaa itsenäisesti etsiä ja hyödyntää tietoa kurssin aiheista. Opiskelija osaa soveltaa opittuja asioita ja kirjoittaa monimutkaisia ohjelmia.

Prerequisites

Ohjelmoinnin perusteet, tietorakenteet ja algoritmit, olio-ohjelmointi.