Počítačová animace

Sitio: Moodle ZČU
Curso: KVD/MMV1 Multimédia pro vzdělávání 1 - šablona
Libro: Počítačová animace
Imprimido por: Nepřihlášený host
Día: lunes, 9 de noviembre de 2026, 02:51

1. Úvod

Počítačovou animaci tvoříme s pomocí speciálního softwaru, které za nás řeší pohyb objektů, jako například pohyb auta po silnici, proudění vody nebo pohyb vlajky ve větru. 

Animace vytvořená jen prostřednictvím počítačové techniky. Vzniká pomocí speciálních animačních programů, kterých je v dnešní době celá řada. Může jít jak o dvourozměrnou animaci, tak o trojrozměrnou animaci.

2D A 3D

  • 2D animace = dvourozměrná (plošná) animace – pracuje s dvourozměrnými objekty (bitmapovými obrázky, geometrickými objekty), může být bitmapová nebo vektorová.

  • 3D animace = trojrozměrná animace – nejznámějším využitím je vytváření animací pro tvorbu filmů, počítačových her a dále ve vědě a průmyslu (počítačové simulace, modely objektů atp.).

Pomocí počítačové animace můžeme jednoduše simulovat fyzikální jevy, jako jsou například koroze kovů, proudění větru nebo vody pomocí prvotního nastavení parametrů animace v programu za pomocí algoritmů. Dalšími pomocnými algoritmy, které nám při tvorbě animace mohou pomoci, jsou algoritmy přímé a inverzní kinematiky, které se používají při řešení pohybu vzájemně spojených částí. Počítačovou animaci můžeme rozdělit na nízkoúrovňovou a vysokoúrovňovou animaci.


2. Nízkoúrovňová animace

Nízkoúrovňová animace se zabývá pohybem objektu po spojité dráze, rychlostí objektu, jeho orientací nebo směrem.

Většina softwaru využívá k vytvoření animaci klíčové snímky (keyframes). Tato metoda spočívá ve zvolení startovacího a koncového pohybu animovaného objektu, například pohybu auta. Počítačový program poté dopočítá pohyb auta ze startovacího místa na koncové.

Objekt, který má počáteční a koncové souřadnice se pohybuje po animační křivce. Klíčování pohybu objektu spočívá v nalezení interpolační křivky. Pohyb objektu po křivce se určí v  několika krocích. Prvním krokem je určení pohybu animovaného objektu, poté se určí změny rychlosti pohybu a jako poslední se určí orientace objektu. Souřadnice objektu v průběhu animace se vypočítají zadáním klíčových poloh. Rychlost se určí parametrizací křivky, která těmito body prochází. Orientace objektu se určí z lokálního souřadnicového systému, který se natáčí a pohybuje po dráze určené křivkou. Změnu těchto parametrů nazýváme parametrizace.

3. Vysokoúrovňová animace

Vysokoúrovňová animace pracuje s operacemi, které se skládají z nízkoúrovňové animace. Pomocí nízkoúrovňové animace se vytvoří pohyby, jako například kolize, která se využije ve vysokoúrovňové animaci.

Operace se dělí na vyšší a nižší a lze z nich vytvářet knihovny pohybů, které můžeme dále využívat. Tyto knihovny slouží jako stavební kameny animací v počítačových programech, které se zabývají tvorbou počítačové animace. Vytvořené knihovny obsahují různé funkce na ovládání pohybu, jako například funkce utíkej rychle nebo utíkej pomalu.

Ve vysokoúrovňové animaci používáme segmentovou strukturu, díky které dokážeme animovat například části lidského těla, viz obrázek 49. Segmentovou strukturu tvoří objekty, které jsou mezi sebou spojeny. Ve spojení dvou objektů s nimi lze otáčet. Toto spojení se nazývá link. Otevřená segmentová struktura je označení pro segmentovou strukturu, která je na jednom konci pevně ukotvena a na druhém konci je volně pohyblivá, nezakotvená. Takto volnému bodu se říká koncový efektor. Příkladem segmentové struktury může být lidská paže, která je na jednom konci spojená s tělem a na druhém konci zakončená prsty.

Segmentova struktura

Obrázek 49: Příklad jednoduché otevřené segmentové struktury se dvěma segmenty

Pro určení polohy segmentové struktury je zapotřebí souřadnicový systém a dalších šest hodnot. První tři hodnoty určí polohu struktury pomocí souřadnic. Další tři hodnoty určují natočení struktury vzhledem k souřadnicové ose. Tyto popsané hodnoty se označují jako stupně volnosti.

Stavový prostor tvoří všechny stavy, do kterých můžeme segmentovou strukturu nastavit. Okamžitý stav objektu je popsán jako stavový vektor.

Ke zjištění souřadnic koncového efektoru a segmentové struktury slouží dvě metody, a to přímá a inverzní kinematika. Metoda přímé kinematiky určuje nastavení úhlu jednotlivých stavových vektorů od počátku ke koncovému efektoru. Jako příklad můžeme použít lidskou ruku, která chce uchopit kliku od dveří. Počátek je rameno a koncový efektor je zápěstí. Aplikace přímé kinematiky spočívá v nastavení úhlů kloubů postupně od ramene přes loket až po zápěstí. Pokud nastane chyba v aplikaci v některém bodě, nebo zdali sestavení neodpovídá skutečnosti, musíme celý proces zopakovat, což je neefektivní.

Použití inverzní kinematiky spočívá v nalezení stavového vektoru, pokud známe koncový efektor. Jde o inverzní algoritmus, kterému zadáme koncovou polohu, podle které se stavový vektor dopočítá. Jako příklad inverzní kinematiky je možné uvést jízdu na kole, kdy pomocí koncového efektoru, v tom to případě je to úhel chodidla, se dopočítají úhly ohnutí kloubu kolena.

4. Skeletální animace

Skeletární animace využívá pomocnou strukturu zvanou kostra a používá se pro animaci více spojených částí, které je složité animovat, jako je například pohyb člověka, viz obrázek 50. Kostra se skládá z kloubů, které reprezentují uzly, které obsahují homogenní matice pro popis afinní transformace dvou kloubů.

Skeletarni animace

Obrázek 50: změna souřadnic soustavy mezi klouby 1 – 1 a j

Ukázka skeletální animace

5. Virtuální humanoid

Postupným vývojem počítačové animace začala vstoupat potřeba vytvoření virtuálního modelu člověka, zvaného jako virtuální humanoid. Virtuální humanoid ztvárňuje lidskou nebo jinou podobu ve virtuálním prostředí, zejména v počítačový hrách nebo ve filmu.

Ukázka pohybu virtuálního humanoida

Struktura virtuálního humanoida je popsána normou H-Anim. Ta vychází z anatomie lidského těla a popisuje virtuálního humanoida pomocí pěti objektů, jako je humanoid, joint, segment, site a displacer.

Objekt humanoid obsahuje globální údaje o postavě, jako například informace o modelu. 

Joint je kloub, který představuje základní spojovací bod kostry humanoida. 

Segmentem rozumíme objekt, který popisuje fyzickou část těla. Segment je hmotný, proto může obsahovat informace o hmotnosti a dalších částech, která jsou k němu zakotveny. 

Site určuje důležité body obsažené v modelu.

Posledním objektem je displacer, který definuje podmnožinu bodů v geometrické struktuře segmentu, které zle samostatně transformovat.