Valósidejű karakter animáció inverz kinematikával

OData támogatás
Konzulens:
Rajacsics Tamás
Automatizálási és Alkalmazott Informatikai Tanszék

Dolgozatomban módszereket mutatok be és hasonlítok össze valós idejű, játékbeli karakterek felhasználói bemenet alapján történő mozgatására. Döntésem, hogy animációval dolgozzak a játékok iránti szeretetemből született. Mivel játékot készíteni összetett, nehéz folyamat, kénytelen voltam annak egy szeletét kiválasztani és csupán abban dolgozni, felfedezni azt. Mindig is elvarázsoltak a monitoron mozgó dolgok, ezért választottam munkámnak a karakter animációt.

A szakdolgozatom első felében alapvető nehézségeket írok le játékfejlesztést és objektumok virtuális világban történő mozgatását illetően. Az első fejezet egy rövid bevezetés a játékfejlesztésbe és karakter animációba. A rákövetkező, második fejezet témája általánosságban az animáció, melynek keretében szó esik karakterek és élettelen modellek mozgatásáról, és az online és offline generált animációk közötti különbségekről. A hangsúly itt a valós idejű mozgatáson és a csontvázuk alapján animálható modellek megalkotásán van. A harmadik fejezet a fejlesztői felületet, az XNA keretrendszert mutatja be, egy ott futó program szerkezetét, alapvető felépítését mutatom be.

A dolgozat második felében a feladatomat fejtem ki, elemzem és hajtom végre az előző fejezetekre támaszkodva. Mozgás számítására alapvetően kétféle megközelítés létezik: előremenő és inverz kinematika. A negyedik fejezet e két módszer összehasonlításáról, előnyeikről és hátrányaikról szól. Bemutatom a Jacobi módszerrel történő inverz kinematika számítását, és indoklom saját, közel Jacobi pontosságú rendszerem megalkotásának fontosságát.

Az ötödik fejezet a fejlesztés folyamatáról szól, lépésről lépésre bemutatva rendszeremet. Az azt felépítő alapelemek funkcionális leírása mellett elmagyarázom tervezői döntéseim lépéseit is. Amint azt a dolgozat kereteiben később kifejtem, a legfontosabb számomra a felhasználói bementre gyorsan reagáló program létrehozása volt. A rendszernek kulcskereteket kell számítania a bemenetnek megfelelő transzformációkból, mely kulcskeretek között interpolálva fog a test folyamatosan mozogni. A számításoknak adott időközönként, késleltetés nélkül kell megtörténniük

Az utolsó fejezet egy összefoglalás és tapasztalataim összegzése. Ezen felül lehetséges fejlesztési irányokat és távlati terveket tűzök ki, melyek esetleges megvalósításával a projekt továbbvihető, és komplexebb rendszer irányába fejleszthető.

Letölthető fájlok

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