Unity-pelin AssetBundle jakelun optimointi
Kuikka, Toni (2016)
Kuikka, Toni
Kajaanin ammattikorkeakoulu
2016
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-201605127502
https://urn.fi/URN:NBN:fi:amk-201605127502
Tiivistelmä
Tämä opinnäytetyö toteutettiin selvitystyönä Critical Force Entertainmentille. Critical Force
Entertainment on kajaanilainen pelialan yritys, joka kehittää työn kirjoitushetkellä Critical Ops –
räiskintäpeliä. Työn tarkoitus oli selvittää, millaisilla ratkaisuilla pelin AssetBundle-tiedostojen
jakelu verkon yli pelaajille olisi nopeinta ja luotettavinta. Ratkaisujen arvioinnissa otettiin huomioon
myös kustannustehokkuus.
Ratkaisujen arvioinnin pohjaksi tutustuttiin moniin tekijöihin jotka vaikuttavat tiedostojakeluun
verkon yli. Näitä tekijöitä ovat muun muassa käytetty web-palvelinsovellus, välimuistus, käytetty
yhteysprotokolla ja CDN-palvelun hyödyntäminen. Tutustumisessa kerättiin tietoa eri tekijöiden
vaikutuksen määrästä ja käytiin läpi vertailuja eri ratkaisujen välillä. Lisäksi kerättiin taustatietoa
Unitysta ja AssetBundleista, jotta kyettiin paremmin arvioimaan eri ratkaisujen soveltuvuutta
AssetBundle jakeluun. Pohjustuksen jälkeen arvioitiin eri tekijöiden soveltuvuutta AssetBundle
jakeluun ja joidenkin tekijöiden vaikutuksen huomattavuutta testattiin käytännössä.
Työn lopputuloksena Nginx todettiin AssetBundle jakeluun sopivimmaksi web-palvelinsovelluksesi
ja välimuistituksen hyödyntäminen erittäin kannattavaksi. Myös käytetyllä yhteysprotokollalla ja
HTTP pakkauksella todettiin olevan huomattava vaikutus tiedostojakeluun verkon yli, mutta niiden
todettiin olevan soveltumattomia AssetBundle jakeluun. Lisäksi CDN-palvelun hyödyntäminen
todettiin kannattavaksi, mutta kustannussyistä vasta pelaajamäärien kasvettua hyvin suuriksi.
Lopuksi todettiin, että luotettavimman tiedon eri tekijöiden vaikutuksesta AssetBundle jakeluun
saisi testaamalla niitä käytännössä pelin todellisilla pelaajamäärillä mahdollisuuden ilmaantuessa.
Entertainment on kajaanilainen pelialan yritys, joka kehittää työn kirjoitushetkellä Critical Ops –
räiskintäpeliä. Työn tarkoitus oli selvittää, millaisilla ratkaisuilla pelin AssetBundle-tiedostojen
jakelu verkon yli pelaajille olisi nopeinta ja luotettavinta. Ratkaisujen arvioinnissa otettiin huomioon
myös kustannustehokkuus.
Ratkaisujen arvioinnin pohjaksi tutustuttiin moniin tekijöihin jotka vaikuttavat tiedostojakeluun
verkon yli. Näitä tekijöitä ovat muun muassa käytetty web-palvelinsovellus, välimuistus, käytetty
yhteysprotokolla ja CDN-palvelun hyödyntäminen. Tutustumisessa kerättiin tietoa eri tekijöiden
vaikutuksen määrästä ja käytiin läpi vertailuja eri ratkaisujen välillä. Lisäksi kerättiin taustatietoa
Unitysta ja AssetBundleista, jotta kyettiin paremmin arvioimaan eri ratkaisujen soveltuvuutta
AssetBundle jakeluun. Pohjustuksen jälkeen arvioitiin eri tekijöiden soveltuvuutta AssetBundle
jakeluun ja joidenkin tekijöiden vaikutuksen huomattavuutta testattiin käytännössä.
Työn lopputuloksena Nginx todettiin AssetBundle jakeluun sopivimmaksi web-palvelinsovelluksesi
ja välimuistituksen hyödyntäminen erittäin kannattavaksi. Myös käytetyllä yhteysprotokollalla ja
HTTP pakkauksella todettiin olevan huomattava vaikutus tiedostojakeluun verkon yli, mutta niiden
todettiin olevan soveltumattomia AssetBundle jakeluun. Lisäksi CDN-palvelun hyödyntäminen
todettiin kannattavaksi, mutta kustannussyistä vasta pelaajamäärien kasvettua hyvin suuriksi.
Lopuksi todettiin, että luotettavimman tiedon eri tekijöiden vaikutuksesta AssetBundle jakeluun
saisi testaamalla niitä käytännössä pelin todellisilla pelaajamäärillä mahdollisuuden ilmaantuessa.