Hyppää sisältöön
    • Suomeksi
    • På svenska
    • In English
  • Suomi
  • Svenska
  • English
  • Kirjaudu
Hakuohjeet
JavaScript is disabled for your browser. Some features of this site may not work without it.
Näytä viite 
  •   Ammattikorkeakoulut
  • Metropolia Ammattikorkeakoulu
  • Opinnäytetyöt
  • Näytä viite
  •   Ammattikorkeakoulut
  • Metropolia Ammattikorkeakoulu
  • Opinnäytetyöt
  • Näytä viite

ScriptableObjectien hyödyntäminen tehtäväjärjestelmässä

Heugenhauser, Daniel (2026)

 
Avaa tiedosto
Heugenhauser_Daniel.pdf (1.852Mt)
Lataukset: 


Heugenhauser, Daniel
2026
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Näytä kaikki kuvailutiedot
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-202602273476
Tiivistelmä
Insinöörityö toteutettiin yhteistyössä startup-yrityksen kanssa, jonka tavoitteena oli kehittää nopeatempoinen, rampage-tyylinen mobiilipeli. Pelin rakenne perustuu lyhytkestoisiin mutta intensiivisiin tasoihin, joita tarvitaan suuri määrä. Kehityksen aikana tasojen määrä, logiikka ja niihin liittyvä data muuttuvat jatkuvasti, joten tarvittiin joustava ja helposti muokattava pohja tehtäväjärjestelmälle. Ratkaisun tuli myös kestää asiakkaan myöhempiä vaatimusmuutoksia ilman merkittäviä ohjelmistoteknisiä muutoksia.

Tätä tarkoitusta varten valittiin Unity-pelimoottorin ScriptableObject-komponentti. ScriptableObject toimii keskitettynä tietovarastona kaikelle tehtäviin liittyvälle datalle ja mahdollistaa uusien tehtävien lisäämisen peliin ilman ylimääräistä ohjelmointia. Järjestelmä on modularisoitu siten, että uusi tehtävä käsitellään automaattisesti, ja kehittäjän vastuulle jää vain serialisoitujen kenttien täyttäminen.

Järjestelmän rajapintana toimi pelin Service Locator-arkkitehtuuriin liitetty Manager-komponentti, joka hallinnoi kaikkia Quest-tyyppisiä ScriptableObjecteja joka päivittää niiden dataa pelin ajon aikana. Päivityksen yhteydessä käytettiin paikallista JSON-pohjaista tallennusta, jonka lataaminen ja kirjoittaminen tapahtui taustalla ilman, että pelaaja huomaa sitä.

Jokainen Unity-scene oli yhteydessä vastaavaan ScriptableObjectiin, mikä varmistaa pelin toimivuuden ja datan eheyden. Kehittäjän vastuulle jäi ainoastaan määritellyn kohtaus-nimeämisprotokollan noudattaminen.

Olen käyttänyt OpenAI:n ChatGPT:n versiota 5 tutkimusasetelman ideoinnissa ja työn jäsentelyssä ja otsikoinnissa. Olen käyttänyt samaa ohjelmaa myös tekstini kieliasun viimeistelyyn ja lähdeviitteiden muotoiluun. Opinnäytetyön tekijänä olen vastuussa kaikesta opinnäytteeni sisällöstä.
 
Kokoelmat
  • Opinnäytetyöt
Ammattikorkeakoulujen opinnäytetyöt ja julkaisut
Yhteydenotto | Tietoa käyttöoikeuksista | Tietosuojailmoitus | Saavutettavuusseloste
 

Selaa kokoelmaa

NimekkeetTekijätJulkaisuajatKoulutusalatAsiasanatUusimmatKokoelmat

Henkilökunnalle

Ammattikorkeakoulujen opinnäytetyöt ja julkaisut
Yhteydenotto | Tietoa käyttöoikeuksista | Tietosuojailmoitus | Saavutettavuusseloste