Pelikehitys ja 2D-pelin kehittämien Godot-pelimoottorilla
Väänänen, Hilda (2025)
Väänänen, Hilda
2025
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2025112429393
https://urn.fi/URN:NBN:fi:amk-2025112429393
Tiivistelmä
Tämän opinnäytetyön tavoitteena oli selvittää pelikehityksessä yleisesti käytettävät menetelmät ja pelikehityksen vaiheet sekä niiden käytäntöjä hyödyntäen toteuttaa 2D-tasohyppelypeli Godot-pelimoottorilla. Työ on suunnattu pelialalasta ja pelikehityksestä kiinnostuneille, joilla on hieman ohjelmistokehitystaustaa.
Työn teoriaosuudessa tarkastellaan aluksi pelikehityksen siirtymistä vesiputousmallista ketteriin menetelmiin, tutustutaan Scrum- ja Kanban-menetelmiin sekä käydään läpi kehitysprosessin vaiheet esituotannosta julkaisuun. Tämän jälkeen kerrotaan pelimoottoreiden hyödyistä pelikehityksessä ja niiden yleisistä ominaisuuksista. Lisäksi vertaillaan Godotia ja kolmea muuta suosittua pelimoottoria niiden vahvuuksien ja rajoitteiden näkökulmasta. Lopuksi kerrotaan Godot-pelimoottorin alkuperästä, lisensoinnista ja avoimuudesta sekä sen tukemista ohjelmointikielistä.
Toiminnallisessa osuudessa kuvataan 2D-tasohyppelypelin kehitysprosessi. Projektinhallinnassa hyödynnettiin Scrum- ja Kanban-menetelmiä, kun taas pelin toteutuksessa käytettiin Godot-pelimoottoria ja C#-ohjelmointikieltä. Projektista käydään läpi sen esituotantovaiheeseen sisältyneet konseptointi ja vaatimustenmäärittely sekä valittujen teknologioiden käyttöönotto. Tämän jälkeen kerrotaan pelin toteutuksesta sisältäen pelimekaniikan, pelihahmon, pelialueen, ansojen, vihollisten, elämien, valikoiden ja pisteytyksen toteuttamisen. Lopuksi kerrotaan projektin aikana tehdystä testaamisesta. Lopputuloksena oli täysin pelattava 2D-tasohyppelypeli.
Koska pelin julkaisu ei kuulunut työn tavoitteisiin, ei työssä käsitellä pelin julkaisuvaihetta teoriaosuuden jälkeen. Tämän lisäksi työssä ei käsitellä pelin markkinointia, tietoturvaa, verkkotoimintoja, tehokkuutta tai saavutettavuutta. Työn ei myöskään ole tarkoitus toimia Godot-pelimoottorin täydellisenä ohjeena tai C#-ohjelmoinnin oppimateriaalina.
Opinnäytetyön lopuksi pohditaan projektin onnistumista, mahdollista jatkokehitystä ja tekijän omaa oppimista.
Työn teoriaosuudessa tarkastellaan aluksi pelikehityksen siirtymistä vesiputousmallista ketteriin menetelmiin, tutustutaan Scrum- ja Kanban-menetelmiin sekä käydään läpi kehitysprosessin vaiheet esituotannosta julkaisuun. Tämän jälkeen kerrotaan pelimoottoreiden hyödyistä pelikehityksessä ja niiden yleisistä ominaisuuksista. Lisäksi vertaillaan Godotia ja kolmea muuta suosittua pelimoottoria niiden vahvuuksien ja rajoitteiden näkökulmasta. Lopuksi kerrotaan Godot-pelimoottorin alkuperästä, lisensoinnista ja avoimuudesta sekä sen tukemista ohjelmointikielistä.
Toiminnallisessa osuudessa kuvataan 2D-tasohyppelypelin kehitysprosessi. Projektinhallinnassa hyödynnettiin Scrum- ja Kanban-menetelmiä, kun taas pelin toteutuksessa käytettiin Godot-pelimoottoria ja C#-ohjelmointikieltä. Projektista käydään läpi sen esituotantovaiheeseen sisältyneet konseptointi ja vaatimustenmäärittely sekä valittujen teknologioiden käyttöönotto. Tämän jälkeen kerrotaan pelin toteutuksesta sisältäen pelimekaniikan, pelihahmon, pelialueen, ansojen, vihollisten, elämien, valikoiden ja pisteytyksen toteuttamisen. Lopuksi kerrotaan projektin aikana tehdystä testaamisesta. Lopputuloksena oli täysin pelattava 2D-tasohyppelypeli.
Koska pelin julkaisu ei kuulunut työn tavoitteisiin, ei työssä käsitellä pelin julkaisuvaihetta teoriaosuuden jälkeen. Tämän lisäksi työssä ei käsitellä pelin markkinointia, tietoturvaa, verkkotoimintoja, tehokkuutta tai saavutettavuutta. Työn ei myöskään ole tarkoitus toimia Godot-pelimoottorin täydellisenä ohjeena tai C#-ohjelmoinnin oppimateriaalina.
Opinnäytetyön lopuksi pohditaan projektin onnistumista, mahdollista jatkokehitystä ja tekijän omaa oppimista.
