| Postacie w grach 3D Autor: Mirosław Kozioł |
|
Wizualizacja grafiki to tylko niewielki fragment pracy jaką musisz wykonać pisząc silnik do gier 3D. Do pozostałej części należy między innymi obsługa postaci. Jeszcze niedawno obsługa postaci była w miarę prosta ale obecnie jest już dość skomplikowanym zagadnieniem.
Początkowo w grach 3D były wykorzystywane postacie których klatki animacyjne były zbiorami wielokątów. Jest to standardowe podejście jakie przychodzi na myśl gdy piszemy grę.
Obecnie takie podejście nie jest stosowane. Dzisiaj postacie są podzielone na fragmenty np. nogi, korpus, ręce i głowa stanowiące oddzielne zbiory wielokątów. Animacja polega na odpowiednim poruszaniu tymi fragmentami. Animację poprzedza definicja połączeń pomiędzy poszczególnymi fragmentami postaci. Akcelerator graficzny zapewnia płynne połączenie tych części w całość tworzącą postać oraz płynną interpolację pomiędzy kluczowymi klatkami. Bronie są oddzielnymi obiektami które możemy dołączyć do dowolnej postaci. W celu ułatwienia animacji możemy dodatkowo przekształcać części postaci poprzez szkielet (animacje szkieletowe). Efektem końcowym jest bardzo realistyczna postać w której widać pod skórą ruch kości oraz mięśni.
Po animacji samej postaci musimy ją jeszcze przemieszczać po grafice. Postacie muszą widzieć swoje otoczenie oraz inne postacie w grze. Dodatkowo musimy określić zachowanie się postaci oraz jej inteligencję.
Pisząc program do animacji postaci należy rozwiązać następujące problemy: 1. Podziału powłoki na części. 2. Przekształcania części powłoki (Jeżeli przekształcamy części powłoki poprzez modyfikację macierzy to raczej musimy wiedzieć coś o strukturach Quaternion.) 3. Interpolacji między-klatkowej. 4. Fizyki postaci 5. Tworzenie powłoki postacji (ang. mesh) 6. Tworzenia skóry postaci (ang. skin) 7. Efektów np. szederów (ang. shaders) 8. Przemieszczania postaci po scenie 9. Kolizji postaci
|
Wszelkie prawa do serwisu posiada Komires Sp. z o. o.