Procedurális bolygófelszín generálás

OData támogatás
Konzulens:
Dr. Umenhoffer Tamás
Irányítástechnika és Informatika Tanszék

A játékfejlesztés során sokszor van szükség terepgenerálásra, mivel a legtöbb esetben ez alkotja az alapját a játéktérnek. Amennyiben a játékteret nem szeretnénk behatárolni, akkor a terepnek egy bolygó felszínét le kell fednie. A bolygók méretük miatt nem tárolhatók el ha a felszínhez közel is részletes terepet szeretnénk előállítani, emiatt csak a program futása során lehet terepet generálni ebben az esetben. A számítási teljesítményt a lehető legjobban kell optimalizálni, hogy valós időben futtatható legyen a program és a tároláshoz szükséges méretet minimalizálni kell, hogy elférjen a memóriában az összes szükséges adat.

A cél egy olyan struktúra megalkotása amellyel a számításra fordítandó teljesítmény és a tároláshoz szükséges hely minimális, valamint egy egész bolygó felszínét tartalmazni tudja. A terep generálása miatt a terepnek támogatnia kell, hogy bármilyen módon létrehozva pontosan ugyanolyan felszínt reprezentáljon. A terepnek dinamikusan kell változtatni a részletességét a kamerától való távolság alapján, hogy a szükséges részletességgel jelenjen meg.

A feladat megoldáshoz a C++ nyelvet, az OpenGL API-t, a GLUT, GLEW, GLAD, GLFW és GLM OpenGL kiterjesztéseket és a Microsoft Visual Studio fejlesztőkörnyezetet használtam.

Letölthető fájlok

A témához tartozó fájlokat csak bejelentkezett felhasználók tölthetik le.