Tasohyppelypeli Godot-pelimoottorilla
Eloranta, Jarkko (2020)
Eloranta, Jarkko
2020
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202002122339
https://urn.fi/URN:NBN:fi:amk-202002122339
Tiivistelmä
Työn tavoitteena oli tutkia Godot-pelimoottorin pääpiirteitä ja toimintoja ja vertailla niitä Unity-pelimoottorin kanssa sekä luoda 2D-tasohyppelypeli Godotilla. Työn aihe syntyi kiinnostuksesta etsiä vaihtoehto Unity-pelimoottorille, joka on suosittu ja tunnettu pelinkehityksessä. Godot valittiin vaihtoehdoksi sen lupaamien erityisominaisuuksien kannalta.
Teoriaosuudessa tutkittiin Godotin ominaisuuksia, käyttötapauksia ja sen käyttämistä. Lisäksi vertailtiin sen lisenssiehtoja, toimintoja ja ominaisuuksia Unity-pelimoottorin lisenssien ja toimintojen kanssa.
Käytännön osana luotiin 2D-tasohyppelypeli, johon rakennettiin 2 pelitasoa sekä liikkumis-, hyppäämis- ja hyökkäyskontrollit ja animaation kytkeminen näihin. Tämän lisäksi kuvattiin kahden eri vihollishahmon luonti ja tekoälyn hyödyntäminen niissä. Menetelmänä käytettiin toiminnallista opinnäytetyötä.
Työssä tuli ilmi, että Godot ja Unity soveltuvat eri tarkoituksiin pelinkehityksessä. Godot esimerkiksi tukee suurempaa määrää ohjelmointikieliä kuin Unity, mutta Unitylle on saatavilla enemmän materiaaleja sen oppimiseen. Lisäksi augmented reality- eli lisätyn todellisuuden tuki on Godotissa erittäin rajattu verrattuna Unityyn. Käytännön osuudessa toisaalta esiteltiin Godotin toimintoja peliä luodessa, joista tuli tietoon, miten toteutetaan tai muodostetaan haluttu toiminto Godotin muokkausohjelmassa, sekä kuinka AStar- ja Navigation2D-reitinhakualgoritmeja käytetään.
Teoriaosuudessa tutkittiin Godotin ominaisuuksia, käyttötapauksia ja sen käyttämistä. Lisäksi vertailtiin sen lisenssiehtoja, toimintoja ja ominaisuuksia Unity-pelimoottorin lisenssien ja toimintojen kanssa.
Käytännön osana luotiin 2D-tasohyppelypeli, johon rakennettiin 2 pelitasoa sekä liikkumis-, hyppäämis- ja hyökkäyskontrollit ja animaation kytkeminen näihin. Tämän lisäksi kuvattiin kahden eri vihollishahmon luonti ja tekoälyn hyödyntäminen niissä. Menetelmänä käytettiin toiminnallista opinnäytetyötä.
Työssä tuli ilmi, että Godot ja Unity soveltuvat eri tarkoituksiin pelinkehityksessä. Godot esimerkiksi tukee suurempaa määrää ohjelmointikieliä kuin Unity, mutta Unitylle on saatavilla enemmän materiaaleja sen oppimiseen. Lisäksi augmented reality- eli lisätyn todellisuuden tuki on Godotissa erittäin rajattu verrattuna Unityyn. Käytännön osuudessa toisaalta esiteltiin Godotin toimintoja peliä luodessa, joista tuli tietoon, miten toteutetaan tai muodostetaan haluttu toiminto Godotin muokkausohjelmassa, sekä kuinka AStar- ja Navigation2D-reitinhakualgoritmeja käytetään.