Siirry suoraan sisältöön

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ö

Teknologiayksikkö

Toimipiste

Lutakon kampus

Opetuskielet

  • Englanti

Paikat

0 - 70

Koulutus

  • Tieto- ja viestintätekniikka (AMK)

Opettaja

  • Jani Immonen

Tavoitteet

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.

Sisältö

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.

Oppimateriaali ja suositeltava kirjallisuus

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

Opetusmenetelmät

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

Tenttien ajankohdat ja uusintamahdollisuudet

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

Vaihtoehtoiset suoritustavat

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

Opiskelijan ajankäyttö ja kuormitus

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

Lisätietoja opiskelijoille

Kurssi arvioidaan pisteytettyjen tehtävien perusteella.

Arviointiasteikko

0-5

Arviointikriteerit, tyydyttävä (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ä.

Arviointikriteerit, hyvä (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 .

Arviointikriteerit, kiitettävä (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.

Esitietovaatimukset

Ohjelmoinnin perusteet, tietorakenteet ja algoritmit, olio-ohjelmointi.