Game Programming (5 op)
Toteutuksen tunnus: HG00CI44-3001
Toteutuksen perustiedot
- Ilmoittautumisaika
-
18.11.2024 - 09.01.2025
Ilmoittautuminen toteutukselle on päättynyt.
- Ajoitus
-
13.01.2025 - 19.05.2025
Toteutus on käynnissä.
- Opintopistemäärä
- 5 op
- Lähiosuus
- 5 op
- Toteutustapa
- Lähiopetus
- Yksikkö
- Liiketoimintayksikkö
- Toimipiste
- Pääkampus
- Opetuskielet
- englanti
- Paikat
- 20 - 45
- Koulutus
- Bachelor's Degree Programme in Business Information Technology
- Opettajat
- Risto Koskenkorva
- Ryhmät
-
HTG24S1Bachelor's Degree Programme in Business Information Technology
-
ZJAHTG24S1Avoin AMK, Tiko, AMK-väylät, BIT, tradenomi amk
- Opintojakso
- HG00CI44
Toteutuksella on 28 opetustapahtumaa joiden yhteenlaskettu kesto on 56 t 0 min.
Aika | Aihe | Tila |
---|---|---|
Ma 20.01.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 21.01.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 27.01.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 28.01.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 03.02.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 04.02.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 10.02.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 11.02.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 17.02.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 18.02.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 03.03.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 04.03.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 10.03.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 11.03.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 17.03.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35BP05.1
Monimuototila Sport/LIKE
R35BP05.2 Monimuototila Sport/LIKE |
Ti 18.03.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35F406
Oppimistila UTI/TEKN
|
Ma 24.03.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 25.03.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 31.03.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 01.04.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 07.04.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 08.04.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 14.04.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 15.04.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ti 22.04.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 28.04.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Ti 29.04.2025 klo 08:45 - 10:30 (1 t 45 min) |
Game Programming HG00CI44-3001 - Demo |
R35A206
Oppimistila Tourism/LIKE
|
Ma 05.05.2025 klo 10:00 - 12:15 (2 t 15 min) |
Game Programming HG00CI44-3001 -Lecture |
R35A206
Oppimistila Tourism/LIKE
|
Arviointiasteikko
0-5
Sisällön jaksotus
Tässä osiossa kuvataan kurssin aikataulu. Tarkoittaen, mitä tapahtuu joka viikko (rytmitys, ajoitus, viikoittaiset tehtävät, toteutuksen pakolliset osat)?
Kurssi koostuu 5 moduulista:
- Moduulit ovat 3-5 viikkoa pitkiä
- Jokainen moduuli on pakollinen ja sisältää viikoittaista luokassa tapahtuvaa toimintaa ja itsenäistä työtä
- Jokaisen moduulin lopussa on pakollinen moduulitehtävä, joka tarkistaa opiskelijan edistymisen ja moduuliin liittyvän ymmärryksen ja taidot
- Yksityiskohtainen moduulin sisältö tulee olemaan saatavilla oppimisympäristössä
Kurssi alkaa 3 viikon mittaisella moduulilla. Moduuli keskittyy kurssin esittelyyn, työkalujen ja ympäristöjen asettamiseen sekä ensimmäiseen sukeltamiseen kurssin aiheeseen. 1. moduulin loppuun mennessä jokaisen opiskelijan tulee täyttää seuraavat kriteerit:
- Osallistunut kaikkiin kurssin sisäisiin aktiviteetteihin (osallistui selvästi)
- On palauttanut moduulitehtävän, joka on hyväksytty
- Jos 1 tai useampi kriteereistä ei täyty, opiskelija katsotaan ei-aktiiviseksi/kurssilta poistuneeksi (Jamk-kurssin resurssivaatimusten mukaisesti)
Viikkoaikataulu:
~4 tuntia viikossa pakollisiin luokassa tapahtuviin toimintoihin (teoria, testaus ja toteutus demossa) -> Mahdollisesti kahdessa erillisessä istunnossa
~4-6 tuntia viikossa tehtäviin liittyvää itsenäistä työtä (viikko- ja muut), moduulitehtävät, luennoille valmistautuminen ja lopputuotteen tekeminen (kaiken tulee edistää opiskelijan lopputuotetta)
Tämä tarkoittaa, että tälle kurssille kannattaa varata joka viikko ~8-10 tuntia työaikaa!
Kurssi edellyttää myös, että jokaisella opiskelijalla on lopputuote esitettäväksi kurssin loppuun mennessä:
- Lopputuote osoittaa opiskelijan ymmärryksen ja taidot liittyen kurssin aiheisiin
- Kurssi päättyy lopputulosten esittelyyn toukokuussa
Tavoitteet
Kurssin tavoitteet:
Oletko koskaan halunnut tehdä pelin omien toiveidesi mukaan?
Pelialan kehitys ei ole koskaan ollut yhtä helppoa aloittaa kuin nykyään, kun kaikki tarvittavat työkalut ovat vapaasti saatavilla. Kuitenkin, jotta voit saada pelin toimimaan haluamallasi tavalla näillä työkaluilla, sinun tulisi silti ymmärtää pelin teknologinen toiminnallisuusnäkökulma perusteellisesti. Tekninen puoli sisältää ohjelmoinnin tai käsikirjoittamisen.
Nyt sinulla on mahdollisuus hyödyntää loogisia taitojasi ja aloittaa pelit, jotka todella tekevät jotain! Annetaan logiikan jyllätä!
Kurssin osaamiset:
- Pelituotanto: Opiskelija pystyy tuottamaan peliohjelmointiin liittyvää sisältöä peliprojektiin ja työskentelemään työkalujen kanssa merkityksellisellä ja systemaattisella tavalla. Opiskelija osaa ohjelmoida moottorikohtaisella kielellä ja ymmärtää varojen roolin. Opiskelija pystyy tuottamaan arvoa peliprojektille työskentelemällä peliteknologiaan liittyvässä erikoisasiantuntijan roolissa.
- Oppimisen oppiminen: Ottaa myös vastuun ryhmäoppimisesta ja jakaa opitun.
Kurssin oppimistavoitteet (tulokset):
Kurssin suoritettuasi ymmärrät, mitä pelitoiminnallisuuksia ovat ja mitä työkaluja voit käyttää niiden luomiseen. Tiedät myös, miten niitä voidaan käyttää yhdessä pelimoottorin kanssa peliteknologian teorian, ohjelmointikonseptien ja periaatteiden mukaisesti pelin prototyyppien (ja pelien) kehittämiseksi. Pystyt soveltamaan tietojasi teknisten rakennuspalikoiden luomiseen pelin prototyyppiin (tai peliin).
Sisältö
Kurssilla perehdytään muun muassa pelimoottorin editoriin, integroituun kehitysympäristöön (IDE) ja versionhallintajärjestelmään. Peliteknologian teoria, ohjelmoinnin periaatteet ja käsitteet sisältävät pelimoottorin sovellusohjelmointirajapinnan (API) ja olioperusteisen ohjelmoinnin (OOP). Käytät vähintään joitakin pelimoottorin kielten, API:n ja OOP:n ominaisuuksia toteuttaaksesi lähdekoodin yksinkertaisille toiminnallisuuksille (tai jopa pelimekaniikoille) pelin prototyypissä. Saat kokemusta pelin prototyypin luomisesta ja käytöstä teknisten rakennuspalikoiden avulla pelimoottorissa.
Oppimateriaalit
Tässä kentässä kuvataan kurssin suorittamiseen vaadittava julkinen oppimateriaali.
Oppimateriaalit:
- Opettajan kirjalliset materiaalit
- Luentomateriaalit (Diat ja oppimisympäristössä)
- Tietokannat (oppimisympäristössä)
- Toteuttamiseen liittyvät materiaalit (oppimisympäristössä)
- Ylimääräistä luettavaa löytyy verkosta ja Books24x7:stä
- Oppimateriaalit löytyvät verkosta ja YouTubesta (tai kurssin tietokannasta)
Käytännöt ja käytetyt työkalut:
- Pelimoottorin kanssa yhteensopiva versionhallintasysteemi (Version Control System - VCS) (esim. Git, GitHub sijaintina)
- Pelimoottori (esim. Unity / Unreal Engine / Godot...)
- Pelimoottoriin liittyvä integroitu kehitysympäristö (IDE) (esim. Visual Studio / JetBrains...)
- Pelimoottoriin liittyvä ohjelmointikieli (esim. C# / C++...)
Joitakin työkaluihin liittyviä julkisia oppimateriaaleja:
- Microsoft. (2024). C# programming guide [Dokumentaatiosivusto]. https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/
- Unity Technologies. (2024a). Unity - Manual [Dokumentaatiosivusto]. https://docs.unity3d.com/Manual/index.html
- Unity Technologies. (2024b). Unity - Scripting API [Application Programming Interface -sivusto]. https://docs.unity3d.com/ScriptReference/index.html
Opetusmenetelmät
Tässä kentässä kuvataan toteutuksessa käytetyt opetus- ja oppimismenetelmät ja miten opiskelijan ohjaus järjestetään.
Sekoitettu malli:
Ensisijainen toimitustapa on toimintojen yhdistelmä luokassa kampuksella ja tietyissä tapauksissa verkossa.
Jos COVID-19 tai muu vastaava tilanne kuitenkin vaatii, oppimista tuetaan verkkotoiminnoilla.
Toiminta syventää oppimista seuraavilla mahdollisilla tavoilla:
- Teoreettiset luennot ja testaus
- Yksilöllistä ja mahdollista ryhmätyötä (toteutus)
- Yksilölliset ja mahdolliset ryhmäharjoitukset, oppimistehtävät (tehtävät) ja reflektointi
- Opastus ohjattujen demojen ja lopputulosten arvioinnin muodossa (apua myös haasteisiin)
Kurssin toiminta voi sisältää myös:
- Projektipohjainen oppiminen
- Käänteinen oppiminen (aiheen oppiminen ennen teorialuentoja)
- Pistokokeet
- Aihekohtainen opetus
- Aihekohtainen tutkimus
- Tietokannan käyttö haasteisiin/ongelmiin/tutoriaaleihin (ongelmapohjainen oppiminen)
Osallistuminen mahdollisiin verkkotoimintoihin:
- Zoomaa käytetään online-toimintoihin
- Vaatii toimivan web-kameran, kuulokkeet ja mikrofonin
- Jos yksi tai useampi seuraavista puuttuu, osallistuminen voidaan hylätä
Tekoälyn (AI) käyttö:
- Tekoälyn ja tekoälyavusteisten työkalujen käyttö on sallittua ja suositeltavaa
- Puhdas kopiointi (plagiointi) on edelleen kiellettyä ja siitä seuraa asianmukaiset rangaistukset
Viralliset viestintäkanavat:
- Joukkueet (ensisijainen) ja sähköposti
- Uutiset (foorumi)
- DiscordApp / WhatsApp / muut viestit ovat henkilökunnan jäseniltä kiellettyjä
- Istunnot voidaan tallentaa ja linkit lisätä työtilaan (tallennuslupa pyydetään aina etukäteen osallistujilta)
Harjoittelu- ja työelämäyhteistyö
Tämä kenttä kuvaa yhteyksiä työelämään ja harjoitteluun.
Kurssilla voi olla vierailevia luennoitsijoita (pelialan asiantuntijoita) ja mahdollisesti retki (virtuaalinen tai fyysinen).
Mahdollinen kurssiprojekti jäljittelee tosielämän projektikokemuksia.
Tenttien ajankohdat ja uusintamahdollisuudet
Tämä kenttä ilmoittaa varsinaisen kokeen päivämäärän ja kellonajan sekä kaikki uusintamahdollisuudet.
Tällä kurssilla ei ole tenttiä!
- Jokainen opiskelija varaa 30 minuutin arviointiajan, jossa hän esittelee lopputuloksensa (portfolio) varmistaakseen kurssin suorittamiseen vaadittavat taidot ja tiedot
- Arviointi suoritetaan 1-on-1-arviointikeskusteluilla kurssin opettajan/opettajien kanssa
- Arviointipaikkojen varaaminen on mahdollista oppimisalustan kautta
Arvioinnin päivämäärä ja kellonaika:
- Toukokuun puoliväli
- Arviointien ja uusintojen tarkat päivämäärät ilmoitetaan kurssin aikana
Toteutuksen valinnaiset suoritustavat
Tässä kentässä kuvataan kurssin vaihtoehtoiset suoritustavat.
Sinulla on oikeus hakea opintosi hyväksilukemista, jos sinulla on aiempaa koulutusta (esim. muualla suoritettua yliopisto-opintoja), joka voidaan hyväksyä parhaillaan suorittamaasi tutkintoon.
Aiemman osaamisen tunnustaminen on mahdollista seuraavilla tavoilla:
- Korkeakouluopintojen hyväksilukeminen (korvaaminen tai sisällyttäminen)
- Muulla tavoin hankitun osaamisen tunnistaminen ja tunnustaminen
Tarkempaa tietoa:
- JAMKin tutkintosäännöt, 17 §
- https://www.jamk.fi/fi/opiskelijoille/tutkinto-opiskelija/aiemman-oppimisen-ja-kokemuksen-tunnustus
Opiskelijan ajankäyttö ja kuormitus
Tässä osiossa kuvataan oppimistehtävät ja niiden suorittamiseen tarvittava aika sekä opiskelijan muut aikataulut.
5 opintopisteen työmäärä on 135 tuntia. Kuorma jakautuu seuraavasti:
- 60 tuntia luokassa tapahtuvaa ohjattua toimintaa
- 75 tuntia itsenäistä työskentelyä
Tämä on suunnilleen seuraavat tuntimäärät:
~60 tuntia: Viikoittainen luokassa tapahtuva toiminta (Luennot, testaus ja toteutus demoissa)
~40 tuntia: Tehtävät (viikko- ja muut), moduulitehtävät ja valmistautuminen luennoille
~10 tuntia: Mahdollinen sprinttiviikko tai prototyypittelytapahtuma
~25 tuntia: Portfolion valmistelu (arviointia varten)
Arviointikriteerit, tyydyttävä (1)
Välttävä (1): Sinulla on perustiedot ohjelmointikielestä ja siihen liittyvistä ydinkehitystyökaluista. Ymmärrät, miten luodaan yksinkertaisia pelitoimintoja ja mekaniikkoja alusta alkaen ohjelmointikielellä ja pelimoottorilla hyödyntäen luokkia, metodeja, muuttujia ja muita perustoimintoja.
Tyydyttävä (2): Sinulla on perustava ymmärrys suurimmasta osasta Ohjelmointiin liittyvistä käsitteistä. Kykenet käyttämään yksinkertaisia pelitoimintoja ja mekaniikkoja ohjelmointikielellä ja pelimoottorilla, hyödyntäen luokkia, metodeja, muuttujia ja muita perustoimintoja.
Arviointikriteerit, hyvä (3)
Hyvä (3): Sinulla on perustavanlaatuinen ymmärrys suurimmasta osasta olioperustaisen ohjelmoinnin käsitteitä ja pystyt analysoimaan valmiita skriptejä ja toimintoja. Pystyt muokkaamaan valmiita tai luomaan omia yksinkertaisia pelitoimintoja ja mekaniikkoja ohjelmointikielen ja pelimoottorin avulla.
Erittäin hyvä (4): Olet perehtynyt pääasiassa olioperustaisen ohjelmoinnin keskeisiin käsitteisiin. Pystyt luomaan pelitoimintoja ja mekaniikkoja tyhjästä ohjelmointikielen ja pelimoottorin avulla. Pystyt hyödyntämään hieman edistyneempiä aiheita, kuten tapahtumia. Olet tehnyt yhteistyötä muiden pelinkehittäjien kanssa projektissasi/projekteissasi.
Arviointikriteerit, kiitettävä (5)
Erinomainen (5): Olet erittäin kyvykäs pääkonsepteissa Objekti-Orientoidussa Ohjelmoinnissa ja kykenet arvioimaan valmiita toiminnallisuuksia kriittisesti. Voit käyttää taitojasi kehittääksesi omia pelitoiminnallisuuksia ja mekaniikoita. Pystyt luomaan monimutkaisia pelitoiminnallisuuksia ja mekaniikoita käyttäen ohjelmointikieltä ja pelimoottoria. Olet tehnyt yhteistyötä muiden pelikehittäjien kanssa projekteissasi.
Esitietovaatimukset
Ei edellytetä aiempaa peliohjelmointikokemusta. Perustaidot pelimoottorin käytössä odotetaan. Riittävä (minimaalinen) ohjelmointitaito (ohjelmointikielen yleinen hallinta, perusrakenteet, syntaksi, funktiot/metodit) odotetaan. Taidot muiden liittyvien työkalujen, kuten versionhallintajärjestelmän ja IDE:n, kanssa ovat hyödyllisiä.