Inversion of Control in Game Development : Strange IoC
Ahonen, Jerri (2019)
Ahonen, Jerri
2019
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-2019120224090
https://urn.fi/URN:NBN:fi:amk-2019120224090
Tiivistelmä
Pelien tekeminen on pitkä ja jatkuvasti muuttuva prosessi. Hauskaan ja mielenkiintoiseen pelikokemukseen pyrkiminen vaatii jatkuvasti muutoksia pelin logiikkaan ja sen ominaisuuksiin. Tavoitteena oli selvittää, kuinka Inversion of Control -kehyksen käyttö parantaa ylläpidettävyyttä sekä helpottaa mobiilipelien kehitysprosessia. Työssä kerrottiin, miksi juuri Strange IoC on valittu, kuvattiin sen toiminnallisuutta ja tutkittiin sen eri ominaisuuksien hyötyjä ja haittoja. Greener Grassilla toteutettiin haastattelu selvittämään Inversion of Control -kehyksen liittyviä päätöksiä ja niiden syitä, siihen tehtyjä muutoksia ja sen käyttöperiaatteita.
Strange on rakennettu Unitya varten. Unity on suosittu 2D- ja 3D-pelimoottori, jota Greener Grass käyttää. Strange on oiva vaihtoehto käytettäväksi Unityn kanssa, vaikka nykyään on muitakin vaihtoehtoja. Inversion of Control -kehyksen käyttämistä suositellaan käsiteltäessä suurempaa projektia, johon kuuluu paljon näkymien ulkopuolista logiikkaa, ja projekteja joista tehdään useita versioita usealle alustalle. Toisaalta, jos projekti on puhtaasti visuaalinen demo, jossa ei tarvitse tilan tallentamista, näkymistä irrotettua logiikkaa tai ulkoisia palveluita, Inversion of Control -kehyksen käyttöä ei suositella.
Inversion of Controllin käyttämiseen siirtyminen perinteisemmästä lähestymistavasta kontrollin virtaukseen koodissa voi aluksi tuntua ylitsepääsemättömältä. Oppimiskäyrä on jyrkkä kokonaan uutta ajatusmallia luokkien rakenteeseen ja niiden vastuiden määrittämiseen sovellettaessa. Yrityksen joka palkkaa ohjelmoijan jolla ei ole aikaisempaa kokemusta Inversion of Controllista tarvitsee tukea työntekijää alkuun pääsemisessä ja tarjota tarvittava määrä ohjausta uuden konseptin oppimisessa.
Strange on rakennettu Unitya varten. Unity on suosittu 2D- ja 3D-pelimoottori, jota Greener Grass käyttää. Strange on oiva vaihtoehto käytettäväksi Unityn kanssa, vaikka nykyään on muitakin vaihtoehtoja. Inversion of Control -kehyksen käyttämistä suositellaan käsiteltäessä suurempaa projektia, johon kuuluu paljon näkymien ulkopuolista logiikkaa, ja projekteja joista tehdään useita versioita usealle alustalle. Toisaalta, jos projekti on puhtaasti visuaalinen demo, jossa ei tarvitse tilan tallentamista, näkymistä irrotettua logiikkaa tai ulkoisia palveluita, Inversion of Control -kehyksen käyttöä ei suositella.
Inversion of Controllin käyttämiseen siirtyminen perinteisemmästä lähestymistavasta kontrollin virtaukseen koodissa voi aluksi tuntua ylitsepääsemättömältä. Oppimiskäyrä on jyrkkä kokonaan uutta ajatusmallia luokkien rakenteeseen ja niiden vastuiden määrittämiseen sovellettaessa. Yrityksen joka palkkaa ohjelmoijan jolla ei ole aikaisempaa kokemusta Inversion of Controllista tarvitsee tukea työntekijää alkuun pääsemisessä ja tarjota tarvittava määrä ohjausta uuden konseptin oppimisessa.