5. Animace? Samozřejmě.

Ilustrační obrázek k článku: Animace? Samozřejmě.
Díky animacím bude scéna nejen živější, ale i uživatelsky přívětivější, umožní lepší vizuální zpětnou vazbu a usnadní navigaci v 3D prostoru.

Pokud už vytváříme vlastní CAD, byla by škoda zůstat jen u 3D. Můžeme přece využít i čtvrtý rozměr – čas. A když už nám CSS nabízí podporu změn v čase — tedy animace a přechody (transition) — proč toho nevyužít?

Ping-pong, jednoduchá animace, čisté CSS

Animace pomocí @keyframes umožňují podrobnou definici změn v čase. Naopak transition slouží ke snadnému a plynulému přechodu mezi dvěma stavy. Každá z těchto možností má své místo.

Jednoduché animace

Jednoduché animace chápu jako takové, které lze napsat „z hlavy“ — tedy bez potřeby složitých výpočtů nebo generování. Uživatel CADu by měl mít možnost s tělesy pohybovat právě tímto způsobem: intuitivně, přirozeně, snadno. Náš editor by mu to měl umožnit.

Přechody

Kromě animací, které běží samy, jsou často potřeba i přechody řízené uživatelem — třeba pomocí ovládacích prvků. Chceme mít možnost tělesa otáčet, posouvat, zvětšovat... a to vše s jemným přechodem.

Ve výsledné scéně se snažíme obejít bez JavaScriptu. Stav můžeme ukládat buď do HTML (například pomocí checkbox nebo radio prvků), nebo přímo do CSS, jak to ukazuje příklad s „Boromejskými prsteny“.

Když stav ukládáme v CSS, používáme většinou ovládání přes hover, místo klasického click. Každý přístup má své plusy i mínusy. Hover třeba umožňuje zůstat „mezi stavy“, což je u radio prvků obtížnější.

Boromejské prsteny, pozice uložené v CSS

Možná si všimnete, že „oblá“ tělesa jsou ve skutečnosti lehce hranatá. Je to dáno tím, že CSS pracuje jen s rovinnými prvky — složenými z ploch. Beziérovy plochy nebo jiné typy zakřivení zatím CSS neumí.

V příštím článku se zaměříme právě na tvorbu a emulaci oblých těles. Ukážeme si několik triků, jak vytvořit vizuální iluzi zakřivení a podíváme se na techniky, které nám k tomu pomohou.

Předchozí   Následující