Algoritmusokkal vezérelt, véletlenszerűen generált 3D játékvilág fejleszése Unity-ben

Dátum
Folyóirat címe
Folyóirat ISSN
Kötet címe (évfolyam száma)
Kiadó
Absztrakt

Szakdolgozatomban egy olyan videojáték prototípus elkészítését tűztem ki célul, amely procedurálisan generált világgal rendelkezik, ezáltal minden játékmenet új és egyedi élményt nyújt a játékos számára. A Unity játékmotor és a C# nyelv segítségével olyan rendszer kialakítására törekedtem, amely képes automatikusan véletlenszerű játékvilágokat generálni, azokat bejárható, és logikailag összefüggő struktúrákká szervezni, valamint a játék újrajátszhatóságat érdekes kihívásokkal és ellenfelekkel növelni. A kutatás és fejlesztés során részletesen foglalkoztam a valós és a pszeudo-véletlenszerű számok közötti különbségekkel, valamint ezek Unity-n belüli alkalmazhatóságával. Külön figyelmet fordítottam a procedurális tartalom generálás módszereire, mint a Perlin-zaj, sejtautomaták, generatív nyelvtan, generikus algoritmusok, valamint gráf-alapú megközelítések, Delaunay-trianguláció, Voronoj-diagramok, minimális feszítőfák és útvonalkereső algoritmusok. A játék megvalósítása során kiemelt szerepet kaptak a szobák és folyosók generálását szolgáló algoritmusok, mint a Bowyer-Watson eljárás, valamint a Prim-algoritmus, amelyek segítségével logikailag jól felépített játékvilág hozható létre. A cellák összekötése és a textúrák dinamikus hozzárendelése lehetővé tette, hogy az elkészült labirintus vizuálisan is megfelelő élményt nyújtson a játékos számára. A fejlesztés egyes fázisai során rendszeres teszteléssel és hibakereséssel biztosítottam, hogy a generált játékvilág megfelelően működjön, valamint azt, hogy ne forduljanak elő olyan játéktér elemek, amelyek lehetetlenné tennék a játékmenetet. Az eredeti célkitűzéseim közül sikeresen megvalósítottam a dinamikusan generált kazamatarendszert, amely minden futás során új pályát hoz létre. Ezt önmagában nagy sikernek éltem meg. Ezen felül megvalósításra került több, kisebb, egyszerűbb rendszer, ami növeli a játékélményt, mint a különböző kihívások és az ellenfelek.

Leírás
Kulcsszavak
PCG, procedurális generálás, valós véletlenszerű számok, pszeudo-véletlenszerű számok, RCG, TRNG, PRNG, véletlenszerű generálás, játék
Forrás