Syventävä pelikehitysLaajuus (5 op)
Tunnus: LTD6052
Laajuus
5 op
Opetuskieli
- suomi
Vastuuhenkilö
- Seppo Nevalainen
- Anssi Gröhn
Osaamistavoitteet
Tavoitteena on syventää tietoja ja taitoja pelikehityksessä Unreal Engine 4:n parissa. Otat haltuun uudelleenkäytettävien komponenttien kehittämisen C++:n avulla. Opintojakson aikana toteutat pelikonseptista prototyypin, joka sisältää erilaisia kenttiä. Peliprototyyppiä rakennetaan viikoittain eteenpäin palasissa, ja opintojakson päätyttyä pääset tekemään pelattavuustestauksen vastaaviin prototyyppeihin, sekä antamaan (ja vastaanottamaan) rakentavaa vertaispalautetta.
Sisältö
Pelisuunnittelu ja pelin rakentaminen:
Pelikonsepti ja työkalut
Unreal Engine 4:n pelien arkkitehtuuri
Kenttäsuunnittelu
Pelikokemuksen syventäminen pelisuunnittelulla
Merkityksellisen pelattavuustestauspalautteen antaminen ja saaminen
Buildien pelitestaus
Pelihahmon rakentaminen, liikuttelu ja animaatioiden hyödyntäminen
Pelihahmon liikkeen rajaaminen
Animaatiojaksojen tekeminen ja linkittäminen
Buildien rakentaminen monelle julkaisualustalle
Ohjelmointi:
Actor-pohjaisten kantaluokkien teko C++:lla
Blueprinttien periminen omista C++-luokista
Triggeröintialueiden hyödyntäminen C++:lla
Pelikomponettien välisten tapahtumaketjujen rakentaminen C++:lla
Ajastinten käyttö C++:lla
Unreal Engine 4:n lokijärjestelmän käyttö
Unreal Engine 4:n merkkijonotyypit ja niiden väliset muunnokset
Massiivisen actormäärän luonti dynaamisesti C++:lla ja niiden hallinta
Actoreiden hakeminen skenestä C++:lla
Pelitilan säilyttäminen Unreal Enginessä kenttien välillä
Pelitilanteen tallentaminen ja lataaminen
Olio-ohjelmoinnin viestintämekanismit ja suunnittelumallit
Ilmoittautumisaika
01.10.2023 - 31.10.2023
Ajoitus
08.01.2024 - 10.03.2024
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tradenomi / Tietojenkäsittely (DD)
Toimipiste
Wärtsilä-kampus Karjalankatu 3 (WÄR)
Opetuskielet
- Suomi
Paikat
5 - 10
Koulutus
- Tietojenkäsittelyn koulutus
Opettaja
- Anssi Gröhn
Vastuuopettaja
Anssi Gröhn
Ryhmät
-
DTNS21Tradenomi (AMK), Tietojenkäsittely, päivä, syksy, 2021
Tavoitteet
Tavoitteena on syventää tietoja ja taitoja pelikehityksessä Unreal Engine 4:n parissa. Otat haltuun uudelleenkäytettävien komponenttien kehittämisen C++:n avulla. Opintojakson aikana toteutat pelikonseptista prototyypin, joka sisältää erilaisia kenttiä. Peliprototyyppiä rakennetaan viikoittain eteenpäin palasissa, ja opintojakson päätyttyä pääset tekemään pelattavuustestauksen vastaaviin prototyyppeihin, sekä antamaan (ja vastaanottamaan) rakentavaa vertaispalautetta.
Sisältö
Pelisuunnittelu ja pelin rakentaminen:
Pelikonsepti ja työkalut
Unreal Engine 4:n pelien arkkitehtuuri
Kenttäsuunnittelu
Pelikokemuksen syventäminen pelisuunnittelulla
Merkityksellisen pelattavuustestauspalautteen antaminen ja saaminen
Buildien pelitestaus
Pelihahmon rakentaminen, liikuttelu ja animaatioiden hyödyntäminen
Pelihahmon liikkeen rajaaminen
Animaatiojaksojen tekeminen ja linkittäminen
Buildien rakentaminen monelle julkaisualustalle
Ohjelmointi:
Actor-pohjaisten kantaluokkien teko C++:lla
Blueprinttien periminen omista C++-luokista
Triggeröintialueiden hyödyntäminen C++:lla
Pelikomponettien välisten tapahtumaketjujen rakentaminen C++:lla
Ajastinten käyttö C++:lla
Unreal Engine 4:n lokijärjestelmän käyttö
Unreal Engine 4:n merkkijonotyypit ja niiden väliset muunnokset
Massiivisen actormäärän luonti dynaamisesti C++:lla ja niiden hallinta
Actoreiden hakeminen skenestä C++:lla
Pelitilan säilyttäminen Unreal Enginessä kenttien välillä
Pelitilanteen tallentaminen ja lataaminen
Olio-ohjelmoinnin viestintämekanismit ja suunnittelumallit
Opetusmenetelmät
Osaat hyödyntää Gameplay Frameworkin eri luokkia ohjelmoinnissa oikeaoppisesti
Osaat hyödyntää UE4:n lokimekanismia C++-koodissa
Osaat luoda C++-kieltä käyttäen Character-tyyppisen oman pelihahmon peliin
Osaat luoda kenttiä graafisten assettien avulla
Osaat luoda pelistä buildit ja merkitä ne tunnistettavasti
Osaat luoda toiminnallisia riippuvuuksia eri actoreiden välille
Osaat ohjelmoida C++:lla Actorin
Osaat ohjelmoida C++:lla Actoreille toiminnallisuutta
Osaat muodostaa C++:lla toteutusta Actor-luokasta Blueprintin laajentaen sen ominaisuuksia
Osaat ohjelmoida C++:lla Actoreille komponentteja
Osaat ohjelmoida C++:lla komponenteille toiminnallisuutta
Osaat hakea C++:lla actoreiden komponentteja ja asettaa niiden ominaisuuksia
Osaat tuottaa C++:lla luotuun Actoriin editorista muokattavia ominaisuuksia
Osaat tuottaa C++:lla luotuun komponettiin editorista muokattavia ominaisuuksia
Osaat suunnitella ajallisesti erilaisia vaihtoehtoja kentässä etenemiselle
Osaat suunnitella ja toteuttaa puzzle-mekaniikan kytkimien avulla
Osaat toteuttaa aloitus- ja suorituksenaikaisen valikon peliprojektiin
Osaat toteuttaa kenttiä suunnitelman mukaisesti
Osaat toteuttaa siirtymät kenttien välillä kehitystä varten
Osaat asettaa nopeuden ja suunnan fysiiikkamallinnusta hyödyntävään Actoriin C++:lla
Osaat dynaamisesti luoda Actoreita C++:lla
Osaat määrittää spawnattavan actorin tyypin muuttujana C++:ssa
Osaat hajauttaa logiikkaa eri komponentteihin
Osaat hallita actoreita ja kameraa välianimaatioissa
Osaat hyödyntää Gameplay Frameworkin Controller-luokkaa hahmon ohjauksessa
Osaat hyödyntää double-dispatch -mekanismia C++:lla
Osaat hyödyntää satunnaisuutta C++:lla UE4:ssä
Osaat hyödyntää visitor-suunnittelumallia tallennuksen yhteydessä
Osaat hyödyntää älykkäitä osoittimia Actoreiden hallinnassa C++:lla
Osaat asettaa kulmanopeudet ja suunnan fysiiikkamallinnusta hyödyntävään Actoriin C++:lla
Osaat kytkeä tapahtumia välianimaatioihin
Osaat ladata tallennustiedoston C++:lla
Osaat liittää komponenttiin meshin
Osaat luoda tallennustiedoston C++:lla
Osaat luoda välianimaation
Osaat muodostaa riippuvuuksia eri komponenttien välille
Osaat palauttaa pelitilanteen tallennustiedoston datan perusteella
Osaat sarjallistaa pelitilanteen tallennustiedostoon sopivaksi tiedoksi
Osaat toistaa välianimaation
Osaat toteuttaa pelattavuustestauksen peliin ja antaa kehittäjälle toimivaa palautetta
Opiskelijan ajankäyttö ja kuormitus
Kokonaisajankäyttö 133h. Itsenäinen opiskelu ja oppimistehtävät 96h, ohjausta 32h, palaute ja itsearviointi 5h.
Lisätietoja opiskelijoille
Vaaditut esitiedot ja osaaminen: Karelian Tietojenkäsittelyn C++-ohjelmointi -opintojakso suoritettu vähintään arvosanalla 3 tai vastaavat tiedot ja taidot.
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
Perustaso: (1)
Osoitat, että tiedät ja ymmärrät miten oppimistavoitteissa vaaditut mainitut asiat toimivat.
Edistynyt taso: (3)
Osoitat, että osaat soveltaa oppimistavoitteissa mainittuja asioita eri tilanteissa kuin mitä Moodle-työtilan materiaaleissa esitetty.
Tavoiteltava taso: (5)
Osoitat, että osaat luoda täysin uusia ratkaisuja oppimistavoitteissa mainittujen asioiden avulla tai soveltaa niitä täysin erilaisissa tilanteissa aiempaan nähden.
Osoitat, että osaat arvioida ja perustella miksi mitäkin oppimistavoitteissa mainittua asiaa voi ja kannattaa soveltaa tekemälläsi tavalla uusissa tilanteissa.
Jokainen oppimistehtävä pisteytetään edellä mainitulla tavalla asteikolla 0-5.
Lopullinen opintojakson arvosana lasketaan kaavalla:
Pisteet = Yhteenlasketut pisteet oppimistehtävistäsi
Max = Oppimistehtävistä saatava maksimipistemäärä
Lopullinen opintojakson arvosana = (Pisteet / Max) * 5.
Ilmoittautumisaika
01.10.2022 - 31.10.2022
Ajoitus
09.01.2023 - 12.03.2023
Opintopistemäärä
5 op
Toteutustapa
Lähiopetus
Yksikkö
Tradenomi / Tietojenkäsittely (DD)
Toimipiste
Wärtsilä-kampus Karjalankatu 3 (WÄR)
Opetuskielet
- Suomi
Koulutus
- Tietojenkäsittelyn koulutus
Opettaja
- Anssi Gröhn
Vastuuopettaja
Anssi Gröhn
Ryhmät
-
LTDNS20Tradenomi (AMK), Tietojenkäsittely, päivä, syksy, 2020
Tavoitteet
Tavoitteena on syventää tietoja ja taitoja pelikehityksessä Unreal Engine 4:n parissa. Otat haltuun uudelleenkäytettävien komponenttien kehittämisen C++:n avulla. Opintojakson aikana toteutat pelikonseptista prototyypin, joka sisältää erilaisia kenttiä. Peliprototyyppiä rakennetaan viikoittain eteenpäin palasissa, ja opintojakson päätyttyä pääset tekemään pelattavuustestauksen vastaaviin prototyyppeihin, sekä antamaan (ja vastaanottamaan) rakentavaa vertaispalautetta.
Sisältö
Pelisuunnittelu ja pelin rakentaminen:
Pelikonsepti ja työkalut
Unreal Engine 4:n pelien arkkitehtuuri
Kenttäsuunnittelu
Pelikokemuksen syventäminen pelisuunnittelulla
Merkityksellisen pelattavuustestauspalautteen antaminen ja saaminen
Buildien pelitestaus
Pelihahmon rakentaminen, liikuttelu ja animaatioiden hyödyntäminen
Pelihahmon liikkeen rajaaminen
Animaatiojaksojen tekeminen ja linkittäminen
Buildien rakentaminen monelle julkaisualustalle
Ohjelmointi:
Actor-pohjaisten kantaluokkien teko C++:lla
Blueprinttien periminen omista C++-luokista
Triggeröintialueiden hyödyntäminen C++:lla
Pelikomponettien välisten tapahtumaketjujen rakentaminen C++:lla
Ajastinten käyttö C++:lla
Unreal Engine 4:n lokijärjestelmän käyttö
Unreal Engine 4:n merkkijonotyypit ja niiden väliset muunnokset
Massiivisen actormäärän luonti dynaamisesti C++:lla ja niiden hallinta
Actoreiden hakeminen skenestä C++:lla
Pelitilan säilyttäminen Unreal Enginessä kenttien välillä
Pelitilanteen tallentaminen ja lataaminen
Olio-ohjelmoinnin viestintämekanismit ja suunnittelumallit
Opetusmenetelmät
Osaat hyödyntää Gameplay Frameworkin eri luokkia ohjelmoinnissa oikeaoppisesti
Osaat hyödyntää UE4:n lokimekanismia C++-koodissa
Osaat luoda C++-kieltä käyttäen Character-tyyppisen oman pelihahmon peliin
Osaat luoda kenttiä graafisten assettien avulla
Osaat luoda pelistä buildit ja merkitä ne tunnistettavasti
Osaat luoda toiminnallisia riippuvuuksia eri actoreiden välille
Osaat ohjelmoida C++:lla Actorin
Osaat ohjelmoida C++:lla Actoreille toiminnallisuutta
Osaat muodostaa C++:lla toteutusta Actor-luokasta Blueprintin laajentaen sen ominaisuuksia
Osaat ohjelmoida C++:lla Actoreille komponentteja
Osaat ohjelmoida C++:lla komponenteille toiminnallisuutta
Osaat hakea C++:lla actoreiden komponentteja ja asettaa niiden ominaisuuksia
Osaat tuottaa C++:lla luotuun Actoriin editorista muokattavia ominaisuuksia
Osaat tuottaa C++:lla luotuun komponettiin editorista muokattavia ominaisuuksia
Osaat suunnitella ajallisesti erilaisia vaihtoehtoja kentässä etenemiselle
Osaat suunnitella ja toteuttaa puzzle-mekaniikan kytkimien avulla
Osaat toteuttaa aloitus- ja suorituksenaikaisen valikon peliprojektiin
Osaat toteuttaa kenttiä suunnitelman mukaisesti
Osaat toteuttaa siirtymät kenttien välillä kehitystä varten
Osaat asettaa nopeuden ja suunnan fysiiikkamallinnusta hyödyntävään Actoriin C++:lla
Osaat dynaamisesti luoda Actoreita C++:lla
Osaat määrittää spawnattavan actorin tyypin muuttujana C++:ssa
Osaat hajauttaa logiikkaa eri komponentteihin
Osaat hallita actoreita ja kameraa välianimaatioissa
Osaat hyödyntää Gameplay Frameworkin Controller-luokkaa hahmon ohjauksessa
Osaat hyödyntää double-dispatch -mekanismia C++:lla
Osaat hyödyntää satunnaisuutta C++:lla UE4:ssä
Osaat hyödyntää visitor-suunnittelumallia tallennuksen yhteydessä
Osaat hyödyntää älykkäitä osoittimia Actoreiden hallinnassa C++:lla
Osaat asettaa kulmanopeudet ja suunnan fysiiikkamallinnusta hyödyntävään Actoriin C++:lla
Osaat kytkeä tapahtumia välianimaatioihin
Osaat ladata tallennustiedoston C++:lla
Osaat liittää komponenttiin meshin
Osaat luoda tallennustiedoston C++:lla
Osaat luoda välianimaation
Osaat muodostaa riippuvuuksia eri komponenttien välille
Osaat palauttaa pelitilanteen tallennustiedoston datan perusteella
Osaat sarjallistaa pelitilanteen tallennustiedostoon sopivaksi tiedoksi
Osaat toistaa välianimaation
Osaat toteuttaa pelattavuustestauksen peliin ja antaa kehittäjälle toimivaa palautetta
Opiskelijan ajankäyttö ja kuormitus
Kokonaisajankäyttö 133h. Itsenäinen opiskelu ja oppimistehtävät 96h, ohjausta 32h, palaute ja itsearviointi 5h.
Lisätietoja opiskelijoille
Vaaditut esitiedot ja osaaminen: Karelian Tietojenkäsittelyn C++-ohjelmointi -opintojakso suoritettu vähintään arvosanalla 3 tai vastaavat tiedot ja taidot.
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
Perustaso: (1)
Osoitat, että tiedät ja ymmärrät miten oppimistavoitteissa vaaditut mainitut asiat toimivat.
Edistynyt taso: (3)
Osoitat, että osaat soveltaa oppimistavoitteissa mainittuja asioita eri tilanteissa kuin mitä Moodle-työtilan materiaaleissa esitetty.
Tavoiteltava taso: (5)
Osoitat, että osaat luoda täysin uusia ratkaisuja oppimistavoitteissa mainittujen asioiden avulla tai soveltaa niitä täysin erilaisissa tilanteissa aiempaan nähden.
Osoitat, että osaat arvioida ja perustella miksi mitäkin oppimistavoitteissa mainittua asiaa voi ja kannattaa soveltaa tekemälläsi tavalla uusissa tilanteissa.
Jokainen oppimistehtävä pisteytetään edellä mainitulla tavalla asteikolla 0-5.
Lopullinen opintojakson arvosana lasketaan kaavalla:
Pisteet = Yhteenlasketut pisteet oppimistehtävistäsi
Max = Oppimistehtävistä saatava maksimipistemäärä
Lopullinen opintojakson arvosana = (Pisteet / Max) * 5.
Ilmoittautumisaika
01.10.2021 - 31.10.2021
Ajoitus
10.01.2022 - 13.03.2022
Opintopistemäärä
5 op
Virtuaaliosuus
5 op
Toteutustapa
Etäopetus
Yksikkö
Tradenomi / Tietojenkäsittely (DD)
Toimipiste
Wärtsilä-kampus Karjalankatu 3 (WÄR)
Opetuskielet
- Suomi
Paikat
20 - 60
Koulutus
- Tietojenkäsittelyn koulutus
Opettaja
- Anssi Gröhn
- Seppo Nevalainen
Vastuuopettaja
Anssi Gröhn
Ryhmät
-
LTDNS19Tradenomi (AMK), Tietojenkäsittely, päivä, syksy, 2019
Tavoitteet
Tavoitteena on syventää tietoja ja taitoja pelikehityksessä Unreal Engine 4:n parissa. Otat haltuun uudelleenkäytettävien komponenttien kehittämisen C++:n avulla. Opintojakson aikana toteutat pelikonseptista prototyypin, joka sisältää erilaisia kenttiä. Peliprototyyppiä rakennetaan viikoittain eteenpäin palasissa, ja opintojakson päätyttyä pääset tekemään pelattavuustestauksen vastaaviin prototyyppeihin, sekä antamaan (ja vastaanottamaan) rakentavaa vertaispalautetta.
Sisältö
Pelisuunnittelu ja pelin rakentaminen:
Pelikonsepti ja työkalut
Unreal Engine 4:n pelien arkkitehtuuri
Kenttäsuunnittelu
Pelikokemuksen syventäminen pelisuunnittelulla
Merkityksellisen pelattavuustestauspalautteen antaminen ja saaminen
Buildien pelitestaus
Pelihahmon rakentaminen, liikuttelu ja animaatioiden hyödyntäminen
Pelihahmon liikkeen rajaaminen
Animaatiojaksojen tekeminen ja linkittäminen
Buildien rakentaminen monelle julkaisualustalle
Ohjelmointi:
Actor-pohjaisten kantaluokkien teko C++:lla
Blueprinttien periminen omista C++-luokista
Triggeröintialueiden hyödyntäminen C++:lla
Pelikomponettien välisten tapahtumaketjujen rakentaminen C++:lla
Ajastinten käyttö C++:lla
Unreal Engine 4:n lokijärjestelmän käyttö
Unreal Engine 4:n merkkijonotyypit ja niiden väliset muunnokset
Massiivisen actormäärän luonti dynaamisesti C++:lla ja niiden hallinta
Actoreiden hakeminen skenestä C++:lla
Pelitilan säilyttäminen Unreal Enginessä kenttien välillä
Pelitilanteen tallentaminen ja lataaminen
Olio-ohjelmoinnin viestintämekanismit ja suunnittelumallit
Opetusmenetelmät
Ymmärrät pelikonseptidokumentin merkityksen
Ymmärrät miten UE4-pelimoottori toimii C++-luokkien ja Blueprinttien suhteen
Osaat mallintaa kenttiin eri tavoin yhdisteltäviä malleja
Osaat koostaa kenttiä UE4:lla staattisista malleista
Osaat toteuttaa UE4 Actoriin toiminnallisuutta C++:lla
Osaat toteuttaa Blueprintissä kutsuttavia funktioita C++:lla
Osaat toteuttaa Blueprintissä ylikirjoitettavia tapahtumia C++:lla
Osaat sitoa dynaamisesti tapahtumankäsittelyfunktioita tapahtumiin C++:lla
Osata muodostaa blueprintin C++-luokasta
Osaat laajentaa C++-luokan toiminnallisuutta Blueprintin avulla
Osaat luoda luokkiin jäsenmuuttujia, joita voi hallita UE4:n details-paneelista käsin
Osaat lisätä UE4:n komponentteja Actoriin C++:lla
Osaat luoda Actoreita dynaamisesti C++:lla
Osaat tuhota Actoreita dynaamisesti C++:lla
Osaat etsiä Actorin komponentin C++:lla
Osaat etsiä pelissä olevia, tietyn tyyppisiä Actoreita C++:lla pelin aikana
Osaat tallentaa Actoreita turvallisesti säiliöluokkaan C++:lla pelin aikana
Osaat kytkeä tapahtumia Actoreihin ja Actoreiden komponentteihin C++:lla
Osaat määritellä omia arvotyyppejä C++:lla käytettäväksi Blueprinteissä
Osaat käyttää Cinematics-toimintoa UE4:ssä kamera-ajoja varten
Osaat tallentaa ja ladata pelitilanteita C++:n avulla
Osaat luoda ja vaihtaa erilaisia Game Modeja eri tasoille
Ymmärrät miten Game Mode, Game State, Player Contoller ja Pawn toimivat keskenään
Osaat suunnitella hiiveskelypelin mekaniikan
Osaat toteuttaa hiiviskelypelin mekaniikan
Osaat suunnitella väistelylentelypelin mekaniikan
Osaat toteuttaa väistelylentelynpelin mekaniikan
Ymmärrät menetelmät pelikokemuksen syventämiseksi
Osaat syventää pelikokemusta suunnittelun avulla
Osaat luoda post mortem-dokumentin pelin tuotannosta
Ymmärrät pelattavuustestauksen merkityksen ja sen avulla haettavan tiedon
Osaat suunnitella pelattavuustestauksen
Olet tehnyt pelattavuustestauksen toisen tekemälle pelille
Osaat hyödyntää double dispatch -mekanismia olio-ohjelmoinnissa
Osaat soveltaa vieralijamallia pelitilanteen tallennuksessa
Tenttien ajankohdat ja uusintamahdollisuudet
Toteutuksesta järjestetään kaksi uusintakertaa, joihin ilmoittaudutaan tarvittaessa Moodle-työtilassa.
Toteutuksen valinnaiset suoritustavat
Näyttö
Opiskelijan ajankäyttö ja kuormitus
Kokonaistyömäärä 133h, josta verkko-ohjauksen osuus 54h, ja itsenäisen työskentelyn osuus 79h (materiaaleihin tutustuminen, oppimistehtävät, palaute)
Arviointiasteikko
H-5
Arviointimenetelmät ja arvioinnin perusteet
Arvosana määräytyy oppimistehtävistä saavutettavien pisteiden mukaan. Ohessa raja-arvot suhteessa kurssin maksimipisteisiin.
<30% => 0
>=30% => 1
>=44% => 2
>=58% => 3
>=72%=> 4
>=86% => 5