Luolastojen generointialgoritmien vertailu
Niemi, Atte (2026)
Niemi, Atte
2026
Tieto- ja sähkötekniikan kandidaattiohjelma - Bachelor's Programme in Computing and Electrical Engineering
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Hyväksymispäivämäärä
2026-04-24
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202604244269
https://urn.fi/URN:NBN:fi:tuni-202604244269
Tiivistelmä
Videopelit alana kasvaa vuosittain nopeammin ja on yleinen viihteenlähde nykypäivänä. Proseduraalinen generointi on suuri osa videopelien tekemisprosessia, jonka avulla pelinkehittäjät voivat luoda sisältöä algoritmien avulla pelinkehityksen tai pelaamisen aikana. Tässä tutkielmassa katsotaan yleisesti videopelien tekemisessä käytettyjä proseduraalisia generointialgoritmeja, joiden avulla pelinkehittäjät voisivat tehdä luolastomaisia rakenteita videopeleihin.
Tutkielmassa käsiteltävät algoritmit ovat soluautomaatti (engl. cellular automata), humalaisen kävely (engl. drunkard’s walk), Perlin-kohina (engl. Perlin-noise) sekä humalaisen kävely - algoritmin ja soluautomaatin yhdistelmä. Algoritmien erilaisia piirteitä, jotka ilmeentyvät algoritmia toteuttaessa tai sen lopputuloksessa, verrataan toisiinsa. Nämä piirteet ovat algoritmin ymmärrettävyys ja toteutettavuus, suoritusaika sekä algoritmilla generoidun luolaston laatu pelattavuuden ja visuaalisen mielenkiintoisuuden puolesta.
Yhteenvedossa todetaan, että jokaisella algoritmilla on vahvuuksia, jotka tekevät niistä sopivan tiettyihin tilanteisiin. Perlin-kohina toimii melkein kaikissa tilanteissa, mutta sitä on hankalampi muokata kuin muita algoritmeja ja tuotetun luolaston reunat ovat avoimet. Soluautomaatti toimii samoilla vahvuuksilla kuin Perlin-kohina, mutta sen suoritusnopeus on huomattavasti suurempi, joten tarpeeksi isolla kartalla kestää kauan generoitua. Humalaisen kävely -algoritmi tuottaa luolaston, joka on yhtenäinen, mutta ei ole yhtä kiinnostava visuaalisesti kuin muut luolastot. Yhdistelmäalgoritmi ei ole huonoin missään yksittäisessä asiassa, mutta samalla se sisältää soluautomaatin sekä humalaisen kävely -algoritmin positiviiset ja negatiiviset puolet.
Tutkielmassa käsiteltävät algoritmit ovat soluautomaatti (engl. cellular automata), humalaisen kävely (engl. drunkard’s walk), Perlin-kohina (engl. Perlin-noise) sekä humalaisen kävely - algoritmin ja soluautomaatin yhdistelmä. Algoritmien erilaisia piirteitä, jotka ilmeentyvät algoritmia toteuttaessa tai sen lopputuloksessa, verrataan toisiinsa. Nämä piirteet ovat algoritmin ymmärrettävyys ja toteutettavuus, suoritusaika sekä algoritmilla generoidun luolaston laatu pelattavuuden ja visuaalisen mielenkiintoisuuden puolesta.
Yhteenvedossa todetaan, että jokaisella algoritmilla on vahvuuksia, jotka tekevät niistä sopivan tiettyihin tilanteisiin. Perlin-kohina toimii melkein kaikissa tilanteissa, mutta sitä on hankalampi muokata kuin muita algoritmeja ja tuotetun luolaston reunat ovat avoimet. Soluautomaatti toimii samoilla vahvuuksilla kuin Perlin-kohina, mutta sen suoritusnopeus on huomattavasti suurempi, joten tarpeeksi isolla kartalla kestää kauan generoitua. Humalaisen kävely -algoritmi tuottaa luolaston, joka on yhtenäinen, mutta ei ole yhtä kiinnostava visuaalisesti kuin muut luolastot. Yhdistelmäalgoritmi ei ole huonoin missään yksittäisessä asiassa, mutta samalla se sisältää soluautomaatin sekä humalaisen kävely -algoritmin positiviiset ja negatiiviset puolet.
Kokoelmat
- Kandidaatintutkielmat [11895]
