Data-suuntautunut teknologia Unity-pelinkehitysmoottorissa
Männistö, Tuomas (2020)
Männistö, Tuomas
2020
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2020102021462
https://urn.fi/URN:NBN:fi:amk-2020102021462
Tiivistelmä
Muistin hidas kehitys ja prosessoreiden siirtyminen moniytimisiksi vaatii uusia ratkaisuja suorituskykyä vaativiin sovelluksiin, kuten videopeleihin. Tätä varten on kehitetty ohjelmointiparadigma data-suuntautunut suunnittelu, jonka perustarkoituksena on kehittää sovellus datan näkökulmasta, jotta muistin hallinta sovelluksessa olisi mahdollisimman tehokasta.
Tutkimuksen päätarkoituksena oli selvittää mikä on ohjelmointiparadigma, vertailla olio-ohjelmoinnin ja data-suuntautuneen suunnittelun eroja. Sekä tutustua Unity Technolo-gies:n kehitysvaiheessa olevaan data-suuntautunutta suunnittelua hyödyntävään teknologiapakettiin nimeltä data-oriented technology stack eli DOTS.
Tutkimuksessa luotiin kaksi pelidemoa sekä normaalilla työnkululla että DOTS-työnkululla, joita vertailtiin keskenään toteutuksen ja suorituskyvyn näkökulmasta.
Tutkimusmenetelmänä käytettiin kvalitatiivista tutkimusta, jossa on hieman kehittämis-tutkimuksen ja kvantitatiivisen tutkimuksen piirteitä, sillä tutkimuksen aikana luotiin kaksi pelidemoa, joiden suorituskykyjä mitattiin ja vertailtiin.
Tuloksissa havaittiin DOTS:n tuottavan huomattavasti suoritustehokkaampaa ja uudelleenkäytettävämpää koodia, mutta vaatii enemmän koodirivejä ja tottumista uudenlaiseen tyyliin ohjelmoida. DOTS:n vajaa dokumentaatio, vaikea syntaksi ja keskeneräisyys vaikeuttivat toteutusta.
Vaikka DOTS vaikutti lupaavalta, ei sitä voitu vielä suositella suurempiin projekteihin sen keskeneräisyyden takia. Julkaistavan version tutkiminen olisi hyvä mahdollisuus jatkotutkimukselle.
Tutkimuksen päätarkoituksena oli selvittää mikä on ohjelmointiparadigma, vertailla olio-ohjelmoinnin ja data-suuntautuneen suunnittelun eroja. Sekä tutustua Unity Technolo-gies:n kehitysvaiheessa olevaan data-suuntautunutta suunnittelua hyödyntävään teknologiapakettiin nimeltä data-oriented technology stack eli DOTS.
Tutkimuksessa luotiin kaksi pelidemoa sekä normaalilla työnkululla että DOTS-työnkululla, joita vertailtiin keskenään toteutuksen ja suorituskyvyn näkökulmasta.
Tutkimusmenetelmänä käytettiin kvalitatiivista tutkimusta, jossa on hieman kehittämis-tutkimuksen ja kvantitatiivisen tutkimuksen piirteitä, sillä tutkimuksen aikana luotiin kaksi pelidemoa, joiden suorituskykyjä mitattiin ja vertailtiin.
Tuloksissa havaittiin DOTS:n tuottavan huomattavasti suoritustehokkaampaa ja uudelleenkäytettävämpää koodia, mutta vaatii enemmän koodirivejä ja tottumista uudenlaiseen tyyliin ohjelmoida. DOTS:n vajaa dokumentaatio, vaikea syntaksi ja keskeneräisyys vaikeuttivat toteutusta.
Vaikka DOTS vaikutti lupaavalta, ei sitä voitu vielä suositella suurempiin projekteihin sen keskeneräisyyden takia. Julkaistavan version tutkiminen olisi hyvä mahdollisuus jatkotutkimukselle.