Külső nézetes akciójáték fejlesztése Direct3D környezetben

OData támogatás
Konzulens:
Dr. Szécsi László
Irányítástechnika és Informatika Tanszék

A szakdolgozat célja, hogy egy számítógépes játék fejlesztésén keresztül bemutassam, hogy milyen alapvető funkciókat kell megvalósítani egy ilyen alkalmazás fejlesztése során.

A dokumentum első részében források alapján gyűjtök információt a különböző funkciók megvalósításához, illetve összehasonlítok néhány labirintus generáló algoritmust, amik segítségével megvalósítható az automatikus pályagenerálás.

A dolgozat második felében a tervezési döntésekről és a megvalósítás részleteiről lesz szó. A pályageneráláson belül bemutatom hogyan alakítottam át a Kruskal algoritmust, hogy nagyobb méretű szobák kerüljenek a labirintusba, illetve ismertetem, hogy milyen módszerrel kapcsolok hozzá egy új labirintust egy már meglévőhöz.

A rajzolási mechanizmus részleteit is tárgyalom, azon belül szó lesz a különböző entitások megkülönböztetéséről, azok kirajzolásáról és a Shader program felépítéséről. Ezután az első részben bemutatott források alapján ismertetem az árnyéktérkép alapú árnyékrajzolás megvalósítását.

Az animáció lépéseinek ismertetése mellett bemutatom, hogy miként lehet megvalósítani az egyes objektumok fizikai szimulációját és az ütközésdetektálást. Emellett szó lesz arról, hogy miként választottam ketté a felhasználó általi irányítást a számítógép általi vezérléstől.

A játék logika egyes elemeit is részletezem, azon belül, hogy miként generálok láva foltokat, ellenségeket és labirintusokat egymás után.

Végül néhány bekezdésben értékelem a munkámat és néhány tovább fejlesztési ötletet mutatok be a dolgozat végén.

Letölthető fájlok

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