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.