Structured Game Code : Development of a Game Foundation Library for the Modern Age
Keränen, Juha; Mäkelä, Jouni (2016)
Keränen, Juha
Mäkelä, Jouni
Oulun ammattikorkeakoulu
2016
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2016052810541
https://urn.fi/URN:NBN:fi:amk-2016052810541
Tiivistelmä
Peliteollisuus on äärimmäisen kilpailullinen ala, jossa pitää pienin kustannuksin ja lyhyessä ajassa saada tehtyä toimiva ja viihdyttävä tuote loppukäyttäjälle. Useat valmiit pelimoottorit tarjoavat kyllä suuren määrän työkaluja, mutta eivät mahdollista työskentelyä matalalla tasolla, jolla voidaan helpommin varmistaa pelin korkea suorituskyky ja koodin eheys.
Hiillos-pelikomponenttikirjasto tarjoaa pelikehittäjille kokoelman työkaluja, jotka ohjaavat pitämään sekä pelimoottorin arkkitehtuurin että pelikoodin tiukasti organisoituneena, mutta silti avoimena välttämättömille muutoksille.
Kirjasto koostuu neljästä kokonaisuudesta: scene-manageroinnista, entity-manageroinnista, asset-manageroinnista, sekä kontrollista. Scenet ovat abstrakteja kokonaisuuksia, joissa pelilogiikka suoritetaan. Entityt ovat erilaisista ominaisuuksista koostuvia palasia, joista esimerkiksi pelien objektit muodostuvat. Assetit ovat pelin resursseja, kuten tekstuureita, fontteja ja ääniä. Kontrolliluokat saavat entityt tekemään asioita sceneissä.
Komponenttikirjastona Hiillos ei ota kantaa siihen, mitä muita kirjastoja pelin kehittäjän tulee käyttää kehittämisprosessissa. Mikäli kehittäjä haluaa käyttää Hiillosta omassa projektissaan, tarvitsee hän lisäksi renderöintikirjaston, sekä pelin tarpeista riippuen muita kirjastoja (esimerkiksi fysiikkakirjaston ja käyttöliittymäkirjaston).
Hiillos-pelikomponenttikirjasto tarjoaa pelikehittäjille kokoelman työkaluja, jotka ohjaavat pitämään sekä pelimoottorin arkkitehtuurin että pelikoodin tiukasti organisoituneena, mutta silti avoimena välttämättömille muutoksille.
Kirjasto koostuu neljästä kokonaisuudesta: scene-manageroinnista, entity-manageroinnista, asset-manageroinnista, sekä kontrollista. Scenet ovat abstrakteja kokonaisuuksia, joissa pelilogiikka suoritetaan. Entityt ovat erilaisista ominaisuuksista koostuvia palasia, joista esimerkiksi pelien objektit muodostuvat. Assetit ovat pelin resursseja, kuten tekstuureita, fontteja ja ääniä. Kontrolliluokat saavat entityt tekemään asioita sceneissä.
Komponenttikirjastona Hiillos ei ota kantaa siihen, mitä muita kirjastoja pelin kehittäjän tulee käyttää kehittämisprosessissa. Mikäli kehittäjä haluaa käyttää Hiillosta omassa projektissaan, tarvitsee hän lisäksi renderöintikirjaston, sekä pelin tarpeista riippuen muita kirjastoja (esimerkiksi fysiikkakirjaston ja käyttöliittymäkirjaston).