}w !"#$%&'()+,-./012345
M ASARYKOVA UNIVERZITA FAKULTA INFORMATIKY
Vizualizace audio vstupu˚ za pomoci cˇ ásticových efektu˚ ˇ B AKALÁ RSKÁ PRÁCE
Rudolf Burda
Brno, jaro 2015
Prohlášení Prohlašuji, že tato bakaláˇrská práce je mým puvodním ˚ autorským dílem, které jsem vypracoval samostatnˇe. Všechny zdroje, prameny a literaturu, které jsem pˇri vypracování používal nebo z nich cˇ erpal, v práci rˇ ádnˇe cituji s uvedením úplného odkazu na pˇríslušný zdroj.
Rudolf Burda
Vedoucí práce: MgA. Helena Lukášová, ArtD. ii
Podˇekování Na tomto místˇe bych rád podˇekoval vedoucí své bakaláˇrské práce MgA. Helenˇe Lukášové, ArtD. za její velmi ochotný pˇrístup a cenné rady pˇri zpracování tématu. Dále bych rád podˇekoval celé své rodinˇe a pˇrátelum ˚ za obrovskou podporu nejen bˇehem mého studia.
iii
Zpusob ˚ psaní textu Vzhledem k použití anglických verzí programu˚ uvádím všechny názvy funkcí v angliˇctinˇe. V práci jsou všechny funkce zvýraznˇené kurzívou a jejich význam je vysvˇetlen pˇrímo v textu. V pˇrípadˇe programu Cinema4D, který poskytuje i cˇ eskou verzi, je pˇreklad uveden ve formˇe poznámky pod cˇ arou.
iv
Abstract Tato bakaláˇrská práce se zabývá problematikou cˇ ásticových systému˚ v 3D grafice. Je v ní popsána jejich historie, zpusoby ˚ užití a základní principy, podle kterých fungují. Dále jsou na dvou testových pˇríkladech porovnány výpoˇcetní nároˇcnosti tˇechto systému˚ u programu˚ 3ds Max a Cinema4D. V praktické cˇ ásti je s pomocí cˇ ásticových systému˚ vytvoˇren v programu Cinema4D hudební videoklip, kde 3D objekty reagují na hudbu. Výstupem této práce je krátké video.
v
Klíˇcová slova vizualizace, audio, video, cˇ ástice, cˇ ásticové systémy, Cinema4D, 3D, MoGraph, Thinking Particles
vi
Obsah 1 2
3
4
Úvod . . . . . . . . . . . . . . . . . . . . Historie cˇ ásticových systému˚ . . . . . . 2.1 Výhody cˇ ásticových systému˚ . . . 2.2 Použití v dnešní dobˇe . . . . . . . . 2.2.1 Vizuální efekty . . . . . . . 2.2.2 Fyzikální simulace . . . . . 2.2.3 Generování flóry . . . . . . 2.2.4 Simulace kapalin . . . . . . 2.2.5 Modelování vlasu˚ . . . . . . 2.2.6 Simulace davu . . . . . . . 2.2.7 Simulace obleˇcení . . . . . . Struktura cˇ ásticových systému˚ . . . . . 3.1 Základní prvky . . . . . . . . . . . 3.1.1 Emitor . . . . . . . . . . . . 3.1.2 Síly . . . . . . . . . . . . . . ˇ 3.1.3 Cas . . . . . . . . . . . . . . 3.1.4 Renderer . . . . . . . . . . . 3.1.5 Pˇríklady . . . . . . . . . . . 3.2 Charakteristika cˇ ástice . . . . . . . 3.2.1 Emise . . . . . . . . . . . . . 3.2.2 Simulace dynamiky . . . . 3.2.3 Smrt . . . . . . . . . . . . . ˇ 3.3 Cásticový manažer . . . . . . . . . 3.3.1 Výpoˇctové fáze . . . . . . . Porovnání softwarových rˇešení na trhu 4.1 MAXON Cinema4D . . . . . . . . 4.1.1 MoGraph . . . . . . . . . . 4.1.2 Hair . . . . . . . . . . . . . 4.1.3 MOCCA . . . . . . . . . . . 4.1.4 Thinking Particles . . . . . 4.1.5 XPresso . . . . . . . . . . . 4.2 Autodesk 3ds Max . . . . . . . . . 4.2.1 Cloth . . . . . . . . . . . . . 4.2.2 Hair and Fur . . . . . . . . 4.2.3 ParticleFlow . . . . . . . . . 4.2.4 MAXScript . . . . . . . . . . 4.3 Pluginy . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 4 6 7 7 7 8 8 9 10 10 12 12 12 12 13 13 13 14 15 15 15 16 16 18 18 18 19 19 19 20 21 21 21 21 22 22 1
OBSAH
5
6
7
4.3.1 RealFlow . . . . . . . . . . . . . . . . . . . 4.3.2 TurbulenceFD . . . . . . . . . . . . . . . . Srovnání výkonnosti ruzných ˚ cˇ ásticových systému˚ . 5.1 Tvorba kouˇre . . . . . . . . . . . . . . . . . . . . 5.1.1 Postup tvorby u Autodesk 3ds Max . . . 5.1.2 Postup tvorby u MAXON Cinema4D . . 5.1.3 Výsledky . . . . . . . . . . . . . . . . . . . 5.2 Tvorba trávy . . . . . . . . . . . . . . . . . . . . . 5.2.1 Postup tvorby u Autodesk 3ds Max . . . 5.2.2 Postup tvorby u MAXON Cinema4D . . 5.2.3 Výsledky . . . . . . . . . . . . . . . . . . . Popis tvorby hudebního videoklipu . . . . . . . . . . 6.1 Výbˇer softwaru . . . . . . . . . . . . . . . . . . . 6.2 Koncept . . . . . . . . . . . . . . . . . . . . . . . 6.3 Tvorba základní scény . . . . . . . . . . . . . . . 6.4 Promˇena textu do objektu˚ . . . . . . . . . . . . . 6.5 Animace klasických cˇ ástic s MoGraph modulem 6.6 Animace pomocí chytrých cˇ ástic a Hair modulu 6.7 Koule z vláken . . . . . . . . . . . . . . . . . . . . 6.8 Skákající cˇ ástice . . . . . . . . . . . . . . . . . . . 6.9 Implementace záznamu Microsoft Kinect . . . . 6.10 Nastavení kamer a renderingu . . . . . . . . . . 6.11 Stˇrih a export v Adobe After Effects . . . . . . . Závˇer . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
22 23 24 24 24 25 26 28 28 28 29 30 30 30 30 31 32 33 34 34 36 36 37 38
2
1 Úvod Koncept cˇ ásticových systému˚ byl poprvé pˇredstaven animátorem firmy Lucasfilm Williamem T. Reevesem roku 1983 v jeho práci „Particle Systems - A Technique for Modeling a Class of Fuzzy Objects.” [1] Takzvané fuzzy objekty, o kterých Reeves ve své práci píše, jsou modely, které nemají pevnˇe definovaný tvar. Pˇredstavme si tedy kouˇr, ohen, ˇ vodopád nebo mrak. Právˇe tyto vˇeci, aˇckoliv se v pˇrirodˇe hojnˇe vyskytují, se do té doby velmi tˇežce realisticky vykreslovaly ve 3D. Metody používající trojúhelníky nebo kˇrivky byly pro tento úˇcel nedostaˇcující. Proto Reeves pˇrišel s postupem, kde je objekt definován pomocí spousty na sobˇe nezávislých bodu. ˚ Každá z tˇechto cˇ ástic má své vlastní atributy, jako napˇríklad pozici, rychlost, barvu cˇ i velikost. Tyto vlastnosti se mohou s prubˇ ˚ ehem cˇ asu stochasticky mˇenit. Výhoda takových systému spoˇcívá hlavnˇe v jejich jednoduché škálovatelnosti, možnosti dynamicky reagovat na okolí a již zmínˇené reprezentace tˇežce definovatelných fuzzy objektu. ˚ Takové vlastnosti se samozˇrejmˇe hodily i v jiných odvˇetvích a cˇ ásticové systémy se tak v souˇcasnosti používají mimo jiné i v prototypovém inženýrství, simulacích davové psychologie a dalších oborech.
3
2 Historie cˇ ásticových systému˚ ˇ Cásticové systémy byly poprvé popsány animátorem Williamem T. Reevesem roku 1983 v jeho akademické práci „Particle Systems- A Technique for Modeling a Class of Fuzzy Objects”. [1] V této práci Reeves popisuje, jak navrhl systém použitý k tvorbˇe speciálních CGI1 efektu˚ ve filmu Star Trek II: The Wrath of Khan. Na obsáhlou množinu drobných virtuálních objektu˚ aplikoval Newtonovy pohybové a gravitaˇcní zákony a pomocí toho simuloval výbuch bomby Genesis na povrchu planety. Z místa exploze se zaˇcal šíˇrit ohen, ˇ který nakonec celou planetu sežehl. K tomuto efektu bylo použito rˇ ádovˇe statisíc cˇ ástic a zhruba cˇ tyˇri sta cˇ ásticových systému. ˚ Tento vynález zpusobil ˚ v oblasti 3D grafiky doslova revoluci, protože umožnil grafikum, ˚ kteˇrí do té doby používali pouze polygony a kˇrivky, vykreslovat objekty s obtížnˇe definovatelnými hranami. Tyto objekty Reeves ve své práci nazval Fuzzy Objects a patˇrí mezi nˇe mnohé pˇrírodní jevy jako již zmínˇený ohen, ˇ ale napˇríklad i tornáda, déšt’, sníh, mraky nebo roje hmyzu.
Obrázek 2.1: Výbuch bomby Genesis ve filmu Star Trek II, 1983 [2] V Reevesovˇe první práci ale byly jeho cˇ ástice pouze svˇetelnými zdroji, nemˇely tedy žádnou geometrii ani nevrhaly stíny. Tento nedostatek odstranil ve své druhé práci nazvané „Approximate and Probabilistic Algorithms 1. Computer Generated Imagery. Aplikace poˇcítaˇcem vytvoˇrené grafiky k tvorbˇe speciálních efektu˚
4
ˇ ˚ 2. H ISTORIE CÁSTICOVÝCH SYSTÉM U
for Shading and Rendering Structured Particle Systems”. [3] V ní už cˇ ástice nemusí svˇetlo pouze generovat, ale mohou ho i odrážet cˇ i absorbovat. Toto bylo samozˇrejmˇe velice výpoˇcetnˇe nároˇcné, a proto bylo u simulace jednotlivých cˇ ástic nutno zavést ne zcela pˇresné stochastické odhady ve stylu metody Monte Carlo2 . Dále byla implementována pokroˇcilejší dynamika objektu˚ tak, aby více respektovala geometrii cˇ ástic. Tato zmˇena umožnila vytváˇrení ještˇe komplexnˇejších systému˚ k simulaci trávy, stromu˚ cˇ i keˇru. ˚ Toho studio Lucasfilm využilo ve svém krátkém animovaném filmu André a vˇcela.
Obrázek 2.2: Tráva modelovaná pomocí cˇ ásticových systému, ˚ 1983 [4] Brzy poté, roku 1987, publikoval Craig W. Reynolds svou vlastní práci „Flocks, herds and schools: A distributed behavioral model“ [5], která se ˇ zabývala studiem chování ptaˇcích hejn a lidského davu. Cástice tak byly schopné následovat jiné jedince a byly schopné se aktivnˇe vyhýbat srážkám. V roce 1992 Richard Szeliski navrhl systém, ve kterém mˇely cˇ ástice povrchovou orientaci. Tyto systémy tak mohly srustat ˚ nebo se trhat a daly tak vzniknout simulaci obleˇcení a jiných textilií. Na tuto práci pozdˇeji navázal Jean-Christophe Lombardo svou vlastní, nazvanou „Oriented Particles: A 2.
Stochastická metoda využívající pseudonáhodná cˇ ísla
5
ˇ ˚ 2. H ISTORIE CÁSTICOVÝCH SYSTÉM U
Tool for Shape Memory Objects Modelling“ [6], ve které využil orientované cˇ ásticové systémy k simulaci deformace objektu. ˚ Za zmínku urˇcitˇe stojí i použití cˇ ásticových systému˚ ve videohrách. Ty pˇrekvapivˇe pˇrišly ještˇe pˇred jejich využitím ve filmu, aˇckoliv pouze ve zjednodušené 2D podobˇe. Již ve Spacewar!, druhé poˇcítaˇcové hˇre, která vubec ˚ kdy vznikla, se vesmírná lod’ po zniˇcení rozprskne do oblaku pixelu. ˚ S ohledem na nároˇcnost takových výpoˇctu˚ ve tˇretí dimenzi se cˇ ásticové systémy probojovaly do her mnohem pozdˇeji, a to až v roce 1996 s vydáním hry Quake od id Software.
Obrázek 2.3: Exploze ve hˇre Spacewar! [7]
2.1
Výhody cˇ ásticových systému˚
∙
Vzhledem k jednoduchosti jednotlivých cˇ ástic je možné zpracovat za stejný výpoˇcetní cˇ as mnohem více objektu˚ než pˇri standardním modelování. Díky tomu dostává scéna komplexnˇejší a více realistický ráz.
∙
Každá scéna je tvoˇrena procedurálnˇe, což znamená, že i složité scény lze vytvoˇrit v relativnˇe krátkém cˇ ase. Taková tvorba je samozˇrejmˇe nesmírnˇe flexibilní a škálovatelná, protože malými zmˇenami lze dosáhnout naprosto odlišných výsledku. ˚
∙
Aˇckoliv jsou systémy založeny na zjednodušených fyzikálních modelech, stále vypadají dostateˇcnˇe realisticky. 6
ˇ ˚ 2. H ISTORIE CÁSTICOVÝCH SYSTÉM U
2.2
Použití v dnešní dobˇe
Dnes jsou cˇ ásticové systémy velmi hojnˇe využívanou souˇcástí nejen grafického odvˇetví a nadále se vyvíjejí. Jejich aplikaci mužeme ˚ najít v mnoha ruznorodých ˚ prumyslech. ˚
2.2.1 Vizuální efekty Ve filmech jsou používány pro speciální efekty jako napˇríklad prachové cˇ ástice nebo exploze. K podobným úˇcelum ˚ používá cˇ ásticové systémy i herní prumysl, ˚ na rozdíl od filmového je ale nucen pracovat v reálném cˇ ase. Proto musí být výpoˇcty zjednodušeny tak, aby je mohl zvládnout i bˇežný poˇcítaˇc. U filmu˚ jsou tyto efekty vˇetšinou poˇcítány na superpoˇcítaˇcích nebo výpocˇ tovými farmami.
Obrázek 2.4: Vizuální efekty ve filmu The Amazing Spiderman 2 [8]
2.2.2 Fyzikální simulace ˇ Cásticové systémy jsou cˇ asto využívány i pˇri návrhu prototypu, ˚ kde je potˇreba rychlý výpoˇcet, který nemusí být zcela pˇresný. K tomu slouží metoda particle tracing, v pˇrekladu trasování cˇ ástic, a používá se napˇríklad k testování aerodynamiky. [9] 7
ˇ ˚ 2. H ISTORIE CÁSTICOVÝCH SYSTÉM U
Obrázek 2.5: Simulace aerodynamiky na formuli [10] 2.2.3 Generování flóry Nˇekteré pˇrírodní jevy jsou až pˇrekvapivˇe dobˇre formulované matematickými vzorci. Aplikací gramatik, jako napˇríklad L-Systému, ˚ na cˇ ásticové systémy jsme schopni realisticky imitovat mnohé stromy, keˇre a rostliny. [9] Jednoduchou zmˇenou pár parametru˚ pak lze ze smrku udˇelat jablon. ˇ Tato procedurální generace byla použita napˇríklad ve hˇre Skyrim od Bethesda Game Studios.
Obrázek 2.6: Stromy s ruznými ˚ parametry [11]
2.2.4 Simulace kapalin Abychom mohli modelovat kapaliny, musíme vzít v úvahu síly jako je povrchové napˇetí, tˇrení a viskozita. Povrchové napˇetí pˇritahuje blízké cˇ ástice k sobˇe aby se dosáhlo co možná nejmenší plochy a tˇrení tlumí pohyb cˇ ástic po interakci s prostˇredím. Viskozita udává vnitˇrní tˇrení cˇ ástic, tedy výmˇenu hybné síly mezi cˇ ásticemi v kapalinˇe. Výsledný systém potom muže ˚ 8
ˇ ˚ 2. H ISTORIE CÁSTICOVÝCH SYSTÉM U
být vykreslen dvˇema zpusoby. ˚ Bud’ se vykreslí každá cˇ ástice individuálnˇe, což funguje dobˇre pˇri modelování vodopádu˚ nebo fontán, anebo se vykreslí výsledný povrch mezi cˇ ásticemi, což poskytuje realistiˇctˇejší výsledek, ale je výpoˇcetnˇe nároˇcnˇejší. [12]
Obrázek 2.7: Simulace vody v programu RealFlow [13]
2.2.5 Modelování vlasu˚ Lidská hlava se normálnˇe skládá ze zhruba sta tisíce vlasu, ˚ simulace takového množství by ale byla velmi nároˇcná. Vlasy, které jsou blízko sebe, naštˇestí mají tendenci se pohybovat podobnˇe a toho využívá takzvaný „ˇrídký model“, který seskupuje jednotlivé vlasy do pramenu. ˚ Až na tento svazek jsou poté aplikovány ruzné ˚ síly. [14]
Obrázek 2.8: Barevnˇe odlišené skupiny vlasu˚ hrdinky filmu Brave [15] 9
ˇ ˚ 2. H ISTORIE CÁSTICOVÝCH SYSTÉM U
2.2.6 Simulace davu ˇ Cásto se s cˇ ásticovými systémy setkáme i u simulace pohybu ptaˇcích hejn cˇ i jiných zvíˇrat, která se sdružují do skupin. Tento koncept byl poprvé navrhnut Craigem W. Reynoldsem [5], který ho rˇ eší tˇremi pravidly: ∙
Vyhýbání se kolizím – cˇ ástice se aktivnˇe vyhýbají ostatním objektum ˚
∙
Srovnávání rychlosti – snaha o dosažení stejné rychlosti jako sousední cˇ ástice
∙
Sdružení hejna – snaha o udržení co nejmenší vzdálenosti mezi sousedy
Variací tˇechto parametru˚ mužeme ˚ dosáhnout ruzných ˚ chování skupin. Pomocí tˇechto metod je tedy možné mnohem pohodlnˇeji a uvˇerˇ itelnˇeji simulovat chování hejn, ryb nebo i lidí v davu.
Obrázek 2.9: Hejno v shortu Stanley and Stella in ’Breaking the Ice’ [16]
2.2.7 Simulace obleˇcení „Cloth is a mechanism, not a continuous material“ [17] – John Skelton ˇ Cásticové systémy jsou schopné simulovat i chování rozliˇcných textilií. Jednotlivé cˇ ástice se propojí vazbami se svými sousedy. Plocha objektu je rozdˇelena do mˇrížky a do jejích vrcholu˚ jsou následnˇe umístˇeny cˇ ástice. Ty se mezi sebou propojí vazbami, na obrázku reprezentované cˇ ernou barvou. Aby látka držela svuj ˚ puvodní ˚ tvar, jsou vrcholy propojeny modrými, diagonálními vazbami. Jako poslední krok jsou pˇridány 10
ˇ ˚ 2. H ISTORIE CÁSTICOVÝCH SYSTÉM U
cˇ ervené síly, které jsou vedeny vždy pˇres dva sousední vrcholy. Tyto vazby zabranují ˇ tomu, aby se tkanina ostˇre nelomila. [18] Pokud je síla vyvíjená na nˇekterou vazbu pˇríliš silná, objekt se v daném místˇe roztrhne. Volbou sil tˇechto vazeb tak lze simulovat ruzné ˚ textilie. Tato technika je obzvláštˇe oblíbená u animovaných filmu, ˚ u her se kvuli ˚ vysoké výpoˇcetní nároˇcnosti zatím nepoužívá. [17]
(a) Vazby v systému [18]
(b) Ukázka z filmu Brave [19]
Obrázek 2.10: Simulace obleˇcení
11
3 Struktura cˇ ásticových systému˚ Abychom mohli cˇ ásticové systémy plnˇe využít, je zapotˇrebí pochopit, jak funguje „motor“, který cˇ ástice obsluhuje. Takovému „motoru“ se odbornˇe rˇ íká engine a je to centrální cˇ ást každého programu. Interpretuje data zadaná uživatelem a pˇrekládá je do strojového kódu. Enginy se od sebe cˇ asto liší. Nˇejaké softwary, jako napˇríklad Houdini od SideEffects, jsou optimalizované spíše na procedurální tvorbu, jiné, napˇríklad RealFlow od Next Limit Technologies, se specializují na simulaci kapalin. Pˇresto všechny vychází ze spoleˇcného základu, který je zde popsán.
3.1
Základní prvky
Každý cˇ ásticový systém má minimálnˇe cˇ tyˇri základní prvky, které uživatel muže ˚ kontrolovat tak, aby dosáhl požadovaných výsledku. ˚ [1] [20] 3.1.1 Emitor Definuje základní vlastnosti cˇ ástic, jejich poˇcáteˇcní lokaci, rychlost a smˇer ˇ pohybu. Cástice v nˇem jsou generovány pomocí pseudonáhodných generátoru˚ cˇ ísel. Muže ˚ emitovat cˇ ástice dvˇema technikami: ∙
Emise podle poˇctu snímku˚ Omezuje poˇcet narozených cˇ ástic podle snímku a náhodnost jejich distribuce.
∙
Emise podle zobrazovací plochy Umožnuje ˇ kontrolu nad tím, kolik cˇ ástic bude generováno na každý bod zobrazovací plochy a náhodnost jejich distribuce. Toto má svuj ˚ velmi praktický duvod. ˚ Je napˇríklad zbyteˇcné, aby objekt, který je v dálce a na zobrazovací ploše zabírá pár obrazových bodu, ˚ generoval tisíce ještˇe menších cˇ ástic.
3.1.2 Síly Bez pusobení ˚ ruzných ˚ sil by byla dráha cˇ ástic pouhou úseˇckou, jejíž prubˇ ˚ eh by urˇcovaly poˇcáteˇcní pozice a rychlost. Simulace sil jako gravitace nebo tˇrení je tedy nezbytné k dosažení realistického výsledku. 12
ˇ ˚ 3. S TRUKTURA CÁSTICOVÝCH SYSTÉM U
(a) Nastavení emitoru
(b) Nabídka základních sil
Obrázek 3.1: Nastavení v programu Cinema4D
ˇ 3.1.3 Cas Mˇerˇ ítko délky života cˇ ástic. Nejˇcastˇeji se jako jednotka používají obrazové snímky, vˇetšina animací pak používá 30 nebo 24 snímku˚ za vteˇrinu. S pru˚ bˇehem cˇ asu mohou cˇ ástice mˇenit své vlastnosti.
3.1.4 Renderer Cílem cˇ ásticového systému je vytvoˇrení nˇejakého efektu, proto je vykreslování cˇ ástic nesmírnˇe duležité. ˚ Renderer muže ˚ cˇ ástice vykreslovat jako body, primitiva nebo otexturované polygony. Ty dále mohou mít ruznou ˚ barvu, velikost, tvar nebo pruhlednost. ˚
3.1.5 Pˇríklady Pomocí variace tˇechto cˇ tyˇr základních prvku˚ mužeme ˚ dosáhnout ruznoro˚ dých výsledku, ˚ jak je názornˇe ilustrováno v tabulce. 13
ˇ ˚ 3. S TRUKTURA CÁSTICOVÝCH SYSTÉM U
Emitor Statický, cˇ ástice jsou distribuovány rovnomˇernˇe po povrchu a ve velkém množství Statický, cˇ ástice jsou distribuovány náhodnˇe ve všech smˇerech Dynamický, rotující okolo osy Z a pohybující se po osách X a Y
Síly
ˇ Cas
Renderer
Výsledek
Gravitaˇcní, odpudivá
Omezený
Malé oranžové cˇ ástice
Prskavka
Odpudivá
Neomezený
Velké šedé cˇ ástice
Mrak
Pˇritažlivá, dostˇredivá, turbulentní
Omezený
Malé i velké cˇ ástice tmavých barev
Tornádo
Tabulka 3.1: Pˇríklady nastavení parametru˚
3.2
Charakteristika cˇ ástice
ˇ Cástice mohou být statické, nebo animované. To znamená, že mužeme ˚ celý život cˇ ástice vykreslit naráz, anebo postupnˇe jako funkci cˇ asu. Rozdíl mezi efektem snˇehových vloˇcek a vlasu˚ tak muže ˚ být pouze ve zpusobu ˚ vykreslení cˇ ástic. U statických cˇ ástic se musí ukládat i jejich dráha. Této dráze lze poté pˇriˇrazovat další parametry, jako napˇríklad tloušt’ka, kudrnatost, upnutí a mnohé další. Touto technikou lze dosáhnout realistické iluze vlasu, ˚ trávy a jiných efektu. ˚ [9] Každá cˇ ástice v Reevesovˇe systému má uloženy následující vlastnosti: 1. 2. 3. 4. 5. 6. 7.
Pozice Rychlost a smˇer Velikost Barva Pruhlednost ˚ Tvar Délka života a vˇek
ˇ Cástice v moderních systémech mohou obsahovat i daleko více parametru, ˚ napˇríklad odrazivost nebo hmotnost. To vše záleží na tom, k cˇ emu je daný cˇ ásticový systém zamýšlen. Tyto atributy nejsou mezi jednotlivými cˇ ásticemi jakkoliv sdíleny. Každá projde bˇehem svého života tˇremi fázemi: emisí, simulací dynamiky a smrtí. 14
ˇ ˚ 3. S TRUKTURA CÁSTICOVÝCH SYSTÉM U
(a) Krychle emitující 5000 animovaných cˇ ástic [21]
(b) Stejné cˇ ástice, jejichž trajektorie je nyní vykreslena [22]
Obrázek 3.2: Srovnání typu˚ cˇ ástic 3.2.1 Emise ˇ Cástice jsou v systému náhodnˇe generovány na pˇredem definované ploše nebo povrchu. Takovému objektu rˇ íkáme emitor. Pozice daného objektu se muže ˚ s cˇ asem samozˇrejmˇe mˇenit. Každé takto generované cˇ ástici jsou pˇriˇrazeny atributy, které mohou být pˇredem definované, vyskytovat se v urˇcitém rozsahu anebo zcela náhodné. 3.2.2 Simulace dynamiky Jednotlivé atributy cˇ ástice se mohou s prubˇ ˚ ehem cˇ asu mˇenit. Napˇríklad následkem tˇrení mohou cˇ ástice zpomalovat, pˇri explozi se muže ˚ mˇenit jejich barva a tak dále. Každá z vlastností cˇ ástic tak muže ˚ být reprezentována jako funkce odvíjející se od cˇ asu. Jednotlivé atributy mohou být závislé i na jiných, napˇríklad pozice cˇ ástice se bude odvíjet od její pˇredešlé pozice, rychlosti, smˇeru a cˇ asu. 3.2.3 Smrt Každá z cˇ ástic má dvˇe vlastnosti urˇcující její existenci: vˇek a délku života. Vˇek udává, jak dlouho je cˇ ástice naživu od své emise, délka života zase maximální cˇ as jejího života. Tyto cˇ ísla se vˇetšinou udávají ve snímcích. Jakmile vˇek dosáhne své hranice urˇcené délkou života, cˇ ástice je zniˇcena. Smrti lze 15
ˇ ˚ 3. S TRUKTURA CÁSTICOVÝCH SYSTÉM U
ˇ dosáhnout ale i jinými zpusoby. ˚ Cástice muže ˚ opustit urˇcené umˇelé hranice (napˇríklad renderovací okno), být pohlcena nˇejakým objektem nebo nˇejaká z jiných vlastností cˇ ástice muže ˚ dosáhnout své hranice a spustit událost smrti.
3.3
ˇ Cásticový manažer
Doposud popsané metody jsou schopné simulovat širokou škálu ruzných ˚ efektu, ˚ zdaleka ale nevyˇcerpávají veškeré možnosti, které cˇ ásticové systémy poskytují. Použitím více cˇ ásticových systému˚ najednou je možné vytvoˇrit ještˇe komplexnˇejší a realistiˇctˇejší efekty. Napˇríklad pro vytvoˇrení ohnˇe, z kterého se bude i kouˇrit, bude zapotˇrebí alesponˇ dvou systému. ˚ K úˇcelu správy tˇechto systému˚ slouží cˇ ásticový manažer, který má ve vˇetšinˇe systému˚ stromovou hieararchii. [23]
Obrázek 3.3: Stromová hierarchie cˇ ásticového manažeru [24]
3.3.1 Výpoˇctové fáze Pˇri simulaci cˇ ástic postupuje engine podle urˇcitého algoritmu. Samotné algoritmy se mohou podle zamýšleného zpusobu ˚ užití od sebe lehce odlišovat, základní myšlenka zustává ˚ ale vždy stejná. [9] 1.
ˇ Cástice pˇrepoˇcte své parametry podle nastavených pravidel systému. Napˇríklad aktualizuje svou pozici podle své pˇredešlé pozice, aktuální rychlosti a nastavených sil. Pokud je cˇ ástic mnoho a složi16
ˇ ˚ 3. S TRUKTURA CÁSTICOVÝCH SYSTÉM U
tost výpoˇctu pˇríliš velká, mohou se nˇejaké kroky, jako tˇreba kontrola kolize, pˇreskoˇcit. 2.
S urˇcitou frekvencí se vytvoˇrí nové cˇ ástice. Jejich parametry jako délka života, pozice, rychlost a další jsou urˇceny emitorem.
3.
Každé nové cˇ ástici jsou pˇriˇrazeny její vlastnosti.
4.
Systém odstraní již nepotˇrebné cˇ ástice. To jsou ty, které pˇrekroˇcily dobu svého života nebo jiné hranice.
5.
Vykreslení cˇ ástic v jejich nynˇejších pozicích. K tomuto kroku se nacˇ tou parametry jako je barva, pruhlednost, ˚ velikost a tvar. Tento krok je výpoˇcetnˇe nejnároˇcnˇejší ze všech a proto je na uživateli, aby tyto parametry dobˇre optimalizoval. Malé cˇ ástice by se tak napˇríklad nemˇely skládat z mnoha polygonu. ˚
Je zapotˇrebí podotknout, že všechny cˇ ásticové systémy se dˇelí na dva hlavní typy. [25] Stateless Particle System je takový, ve kterém jsou veškerá data spoˇcítána hned na zaˇcátku života cˇ ástice. Takový systém je definován pouze svými poˇcáteˇcními hodnotami a cˇ asem, nijak tedy nemuže ˚ reagovat na dynamické okolí. Podporuje tak pouze jednodušší efekty a používal se hlavnˇe na starších grafických procesorech. Druhým, a nyní bˇežnˇejším typem, je State Preserving Particle System. Ten používá iterativní metody integrace pro výpoˇcet aktuální pozice každé cˇ ástice. Svou iterativní metodikou tak umožnuje ˇ i dynamické reakce cˇ ástic na mˇenící se okolí. Ve složitˇejších systémech mohou být v zájmu zlepšení výkonu cˇ ástice kategorizovány do skupin. Pro každou z tˇechto skupin pak platí stejné síly. Tyto skupiny se tedy liší svým chováním a vˇetšinou pˇredstavují ruzné ˚ cˇ ásti napodobovaného jevu. Finální simulace seskupí tyto skupiny do jednoho ˇ celku. Cásticové systémy druhého rˇ ádu tak mohou brát emitory nižších systému˚ jako cˇ ástice a vytváˇret tak ještˇe dynamiˇctˇejší efekty.
17
4 Porovnání softwarových rˇešení na trhu Pro srovnání jsem si vybral produkty od dvou firem s nejvˇetším zastoupením na trhu. Autodesk a MAXON nabízejí nejkomplexnˇejší dostupná rˇ ešení 3D grafiky, což zahrnuje i cˇ ásticové systémy. Tyto programy ale samozˇrejmˇe nejsou až tak úzce specializované a jejich výsledky nemusí být dostaˇcující, proto v druhé cˇ ásti této kapitoly pˇredstavím komerˇcnˇe úspˇešné pluginy, které vylepšují funkcionalitu cˇ ásticových systému˚ v tˇechto programech.
4.1
MAXON Cinema4D
Cinema4D je komerˇcní multiplatformní program pro tvorbu 3D grafiky. V souˇcasnosti je vyvíjen nˇemeckou spoleˇcností MAXON Computer GmbH. Jeho první verze byla vydána již v roce 1993 pro poˇcítaˇce Amiga. Pro nás je zajímavý modul chytrých cˇ ástic, který nabízí vˇetší kontrolu nad cˇ ásticemi než standardní systémy. Cinema4D obsahuje i modul MoGraph, který se stal velmi oblíbeným a mocným nástrojem k animaci. Cinema4D se podílela na tvorbˇe mnoha Hollywoodských filmu˚ jako napˇríklad Lovecká sezóna, Iron Man 3 nebo Pacific Rim. Od verze R13 se Cinema4D prodává ve cˇ tyˇrech verzích s ruznou ˚ funkcionalitou. V dobˇe psaní této bakaláˇrské práce byla použita verze R15, aˇckoliv je na trhu již novˇejší verze programu R16. [26]
4.1.1 MoGraph MoGraph je modul používaný pro procedurální modelování a animaci. Díky svému jednoduchému ovládání a pusobivým ˚ výsledkum ˚ si získal velˇ kou oblibu ve filmaˇrském odvˇetví. Casto se používá napˇríklad pro 3D grafiku televizních kanálu. ˚ MoGraph pracuje s nástrojem Cloner1 , který je schopen vygenerovat na scénˇe tisíce objektu. ˚ Tyto objekty pak mohou být velmi snadno ovládány nˇekolika efektory. MoGraph byl pˇredstaven v roce 2006 pro verzi R9.6. Na jeho úspˇech navázala jeho vylepšená verze MoGraph 2 ve verzi R11.5.
1.
Klonování - objekt
18
ˇ 4. P OROVNÁNÍ SOFTWAROVÝCH REŠENÍ NA TRHU
Obrázek 4.1: Ukázka MoGraph modulu 4.1.2 Hair Vlasový modul pro tvorbu vlasu, ˚ srsti, peˇrí, trávy a dalších efektu˚ se statickými cˇ ásticemi. Vlasy jsou podle rˇ ídkého modelu ovládány vodítky, což snižuje nároˇcnost na pamˇet’ a výpoˇcet. Jednotlivým vlasum ˚ lze pˇriˇradit mnoho vlastností jako napˇríklad tloušt’ka, délka, roztˇrepení, kudrnatost a další. V Cinemˇe se objevil poprvé roku 2005 ve verzi R9.5. 4.1.3 MOCCA MOCCA je zkratka pro MOtion Capture and Character Animation. Je to kompletní balíˇcek pro tvorbu charakteru. Umožnuje ˇ rigging2 pomocí dopˇredné i inverzní kinematiky, animaci walk cyklu3 a mimo jiné do nˇej spadají i nástroje pro tvorbu látky. Je souˇcástí programu již od verze R8, kde zárovenˇ byly pˇredstaveny i chytré cˇ ástice. 4.1.4 Thinking Particles Thinking Particles využívají nativní programovací prostˇredí XPresso ke kontrole cˇ ástic. Ty mohou interagovat jak s okolním prostˇredím, tak se sebou navzájem. Do tohoto prostˇredí jsou implementovány ještˇe další objekty 2. 3.
Mapování kostry na charakter Cyklická animace simulující chuzi ˚
19
ˇ 4. P OROVNÁNÍ SOFTWAROVÝCH REŠENÍ NA TRHU
jako napˇríklad ruzné ˚ generátory nebo odražeˇce cˇ ástic. Aˇckoliv pro bˇežného uživatele muže ˚ prostˇredí XPressa vypadat strašidelnˇe, po pochopení základu˚ poskytuje velmi mocný nástroj pro pokroˇcilou animaci. Modul chytrých cˇ ástic pro MAXON externˇe vyvinulo studio Cebas a do Cinemy byl pˇridán již v roce 2002. Cebas tehdy pˇredala svuj ˚ produkt do správy MAXONu a v souˇcasnosti nabízí svuj ˚ vlastní plugin thinkingParticles i pro ostatní komerˇcní programy.[27]
4.1.5 XPresso XPresso je programovací prostˇredí, kde lze za pomoci uzlu˚ vytváˇret vztahy mezi jednotlivými objekty ve scénˇe. Toho lze využít k ovládání vlastností jednoho objektu jiným, spouštˇení ruzných ˚ událostí nebo právˇe ke kontrole chytrých cˇ ástic.
Obrázek 4.2: Uživatelské prostˇredí XPressa
20
ˇ 4. P OROVNÁNÍ SOFTWAROVÝCH REŠENÍ NA TRHU
4.2
Autodesk 3ds Max
3ds Max je jeden z nejrozšíˇrenˇejších profesionálních programu˚ pro tvorbu 3D grafiky. Díky jeho spoustˇe nástroju˚ se používá v mnoha odvˇetvích od filmového a herního prumyslu ˚ až po architektonické vizualizace. Jeho první verze se objevila již na operaˇcním systému MS-DOS v roce 1990. V soucˇ asné dobˇe jeho vývoj spadá pod americkou firmu Autodesk, která mimo jiné vlastní i další podobné programy jako Maya, Softimage nebo Mudbox. Díky tomu je mezi tˇemito produkty vˇetší kompatibilita a tak se cˇ asto navzájem doplnují. ˇ 3ds Max je dostupný pouze pro operaˇcní systém Microsoft Windows a od roku 2014 je distribuován pouze v 64bitové verzi. V dobˇe psaní této práce byla použita rok stará verze 2015, aˇckoliv je dostupná již verze 2016. [28]
4.2.1 Cloth I 3ds Max má vlastní integrovaný engine pro simulaci látky. Lze jej využívat s ruznými ˚ dynamickými silami, které program nabízí. Data o deformaci látky lze uložit na pevný disk tak, aby se zrychlil výkon v editoru.
4.2.2 Hair and Fur Stejnˇe jako u Cinemy se jedná o vlasový modul pro modelování se statickými cˇ ásticemi. Dˇelí se na nˇekolik komponent. V Hair and Fur modifikátoru lze nastavit vlastnosti vlasu, ˚ jejich zabarvení, roztˇrepení a tak dále. Render Effect umožnuje ˇ uživateli kontrolu nad tím, jak jsou vlasy vykreslovány. Navíc se pˇri použití modifikátoru u každého svˇetla na scénˇe zobrazí Hair Light Attributes, kde lze napˇríklad nastavit, jak se budou chovat vlasové stíny. Komponenta Render Element se zase využívá pˇri postprodukci.
4.2.3 ParticleFlow ParticleFlow je cˇ ásticový systém ovládaný skrze uživatelské rozhraní Particle View. Podobnˇe jako XPresso umožnuje ˇ tvorbu komplexních prvku˚ skrze uzly. Narozdíl od Cinemy je v nˇem každá jednotlivá událost seskupena do jednoho okna, které obsahuje všechny akce a testy pro danou událost. Pro tvorbu sofistikovanˇejších systému˚ lze samozˇrejmˇe seskupovat více akcí dohromady. 21
ˇ 4. P OROVNÁNÍ SOFTWAROVÝCH REŠENÍ NA TRHU
Obrázek 4.3: Uživatelské prostˇredí Particle View 4.2.4 MAXScript MAXScript je vestavˇený objektovˇe orientovaný jazyk, který rozšiˇruje funkcionalitu 3ds Max. S jeho pomocí lze vytváˇret skripty pro rˇ ešení ruzných ˚ sofistikovaných úloh a tvorby nových nástroju. ˚ Pˇristupuje se do nˇej skrze záložku Utilities a Listener Window. [29]
4.3
Pluginy
Plugin je obecnˇe zásuvný modul do jiné aplikace, který rozšiˇruje její funkˇcnost. V pˇrípadˇe pˇrídavných cˇ ásticových modulu˚ to ale není tak docela pravda. Pluginy mnohých firem se ukázaly jako neuvˇerˇ itelnˇe užiteˇcné a tak tyto firmy mimo zásuvných modulu˚ nabízejí i zcela vlastní software. V této podkapitole pˇredstavím dva z mnoha takových pluginu, ˚ které znaˇcnˇe usnadnují ˇ a rozšiˇrují funkcionalitu základních cˇ ásticových systému. ˚ 4.3.1 RealFlow RealFlow je simulátor kapalin a pevných tˇeles vyvíjený španˇelskou spoleˇcností Next Limit Technologies. Jeho nejvˇetší výhodou oproti ostatním cˇ ásticovým systémum ˚ je možnost využití více procesorových jader a opti22
ˇ 4. P OROVNÁNÍ SOFTWAROVÝCH REŠENÍ NA TRHU
malizace vyrovnávací pamˇet, což umožnuje ˇ plynulou obsluhu více cˇ ástic. Byl použit ve filmech jako The Matrix Reloaded, Ice Age nebo Poseidon. RealFlow muže ˚ být použit jako samostatný software, nebo jako plugin do aplikací Cinema4D, LightWave, 3DsMax, Maya, Softimage a Houdini. [30] 4.3.2 TurbulenceFD TurbulenceFD od firmy Jawset je simulátor plynu˚ a kapalin. Pracuje s voxely, tedy objemovými cˇ ásticemi, které pˇredstavují hodnotu v pravidelné mˇrížce 3D prostoru. Pro každý voxel je program schopen vypoˇcítat parametry jako napˇríklad rychlost kapaliny, její teplotu, hustotu kouˇre a další. Tyto výpoˇcty jsou namísto tradiˇcního procesoru obsluhovány na grafické kartˇe, která bˇežnˇe nabízí osm až patnáctkrát více pamˇeti než vˇetšina procesoru. ˚ To v praxi znamená, že simulace takových dynamik muže ˚ být celkovˇe nˇekolikrát rychlejší. Spolu s nˇekolika dalšími chytrými designovými prvky se tak jedná o velmi mocný nástroj, který byl použit napˇríklad v televizních seriálech CSI a Battlestar Galactica. [31]
Obrázek 4.4: TurbulenceFD [32]
23
5 Srovnání výkonnosti ruzných ˚ cˇ ásticových systému˚ V této kapitole se pokusím o srovnání možností simulace kouˇre a trávy v programech Autodesk 3ds Max a MAXON Cinema4D. Pˇríklady jsem testoval na poˇcítaˇci s procesorem Intel i5-2400 s taktem 3,1GHz, grafickou kartou Nvidia GeForce GTX560, 8GB RAM a operaˇcním systémem Microsoft Windows 7 x64. Poˇcet snímku˚ za vteˇrinu byl mˇerˇ en programem Fraps. Výsledné animace lze nalézt v pˇríloze této bakaláˇrské práce. V rámci této práce byly použity rok staré, 64bitové verze Autodesk 3ds Max 2015 a MAXON Cinema4D R15. Kvalita výsledku˚ by se ale nemˇela nijak lišit od nejnovˇejších verzí. Ani u jednoho programu nebyl použit jakýkoliv plugin, testovány jsou tedy pouze základní balíˇcky samotných produktu. ˚
5.1
Tvorba kouˇre
Kouˇr je nepochybnˇe jedním z nejpoužívanˇejších efektu˚ v 3D grafice a dobˇre otestuje schopnosti enginu vykreslovat animované cˇ ástice. Pˇri filmování se velmi tˇežko kontroluje a pojí se s ním i mnohá zdravotní nebezpeˇcí. Proto se cˇ ím dál tím více producentu˚ uchyluje k jeho tvorbˇe pouze ve virtuální podobˇe. 5.1.1 Postup tvorby u Autodesk 3ds Max Na scénu jsem umístil podlahu se základním šedým materiálem a primitivum ikonické konvice z Utahu, která byla vytvoˇrena již roku 1975 Martinem Newellem, cˇ lenem akadamické obce na univerzitˇe v Utahu. Za generátor cˇ ástic jsem zvolil Particle Flow Generator a umístil ho do hubice konve tak, aby simuloval stoupající páru. Po rozkliknutí nabídky v emitoru se dostaneme do Particle View, což je hlavní uživatelské rozhraní pro tvorbu a modifikaci cˇ ásticového systému Particle Flow. [33] V sekci birth jsem nastavil, aby emitor vypouštˇel cˇ ástice po dobu 120 snímku, ˚ a pˇrepnutím emitoru na rate jsem zadal požadovanou frekvenci 15 cˇ ástic za sekundu. Na cˇ ástice jsem poté aplikoval dvˇe síly. Drag má za cíl brzdit cˇ ástice, takže se postupem cˇ asu lineárnˇe zpomalují. Druhou silou je vítr, který svým nastavením turbulence dodává pohybu cˇ ástic organický prubˇ ˚ eh. ˇ Cástice jsou renderovány jako cˇ tverce, každý cˇ tverec je orientován ke kameˇre. V materiálu kouˇre je v kanálu pruhlednosti ˚ nastavený kruhový pˇrechod s fraktálovým šumem, takže okraje cˇ tvercu˚ nejsou vidˇet. Uvnitˇr 24
ˇ ˚ ˚ 5. S ROVNÁNÍ VÝKONNOSTI R UZNÝCH CÁSTICOVÝCH SYSTÉM U
materiálu jsem také nastavil, aby se s rostoucím vˇekem cˇ ástice materiál zvˇetšoval a simuloval tak rozplývání kouˇre. Scénu osvˇetluje jedno zamˇerˇ ené svˇetlo se zapnutými stíny. Pro výpoˇcet stínu˚ je použita metoda sledování paprsku. Jako renderer jsem zvolil NVIDIA mentalray, velikosti obrázku 1280x720 a formát pro uložení PNG. Výpoˇcet 120 snímku˚ trval 25 minut, což je 12,5 sekund na jeden snímek. Renderování prvních snímku˚ trvalo 10 ˇ vteˇrin, závˇereˇcné trvaly už 18 sekund. Cástice tedy render zpomalily o osm vteˇrin, což není špatný výsledek. Pˇri práci ve viewportu1 jsem ale pˇri pˇrehrávání animace zaznamenal znaˇcné trhání obrazu, se všemi cˇ ásticemi na obrazovce se obˇcas zobrazovalo pouze sedm snímku˚ za vteˇrinu.
Obrázek 5.1: Mˇerˇ ení fps v 3ds Max
5.1.2 Postup tvorby u MAXON Cinema4D Pro zachování stejné složitosti scény jsem konvici z 3ds Maxu exportoval ve formátu OBJ a poté importoval do Cinemy. Nastavení svˇetel je u obou programu˚ zcela identické. Do generátoru cˇ ástic jsem zadal stejné hodnoty jako u minulého programu. Cinema nenabízí ve své nabídce sílu Drag, proto jsem pro úˇcel zpomalení cˇ ástic využil tˇrení. Nastavení vˇetru je také velice podobné jako u 3ds Maxu. ˇ 1. Cást okna zobrazující scénu
25
ˇ ˚ ˚ 5. S ROVNÁNÍ VÝKONNOSTI R UZNÝCH CÁSTICOVÝCH SYSTÉM U
Nejvˇetším rozdílem mezi programy je to, že Cinema4D nabízí pro simulaci kouˇre svuj ˚ vlastní shader zvaný Pyrocluster. Ten ale pracuje s volumetrickými cˇ ásticemi, takže v tomto testu je spíše pro ilustraci. Pyroclustrový materiál jsem pˇriˇradil k emitoru a do scény umístil objekt prostˇredí, kterému jsem dal materiál Pyrocluster – Volume Shader. Ihned poté staˇcí scénu vyrenderovat a vidíme velmi realistický kouˇr. Pokud si Pyrocluster otevˇreme, tak ale poˇrád mužeme ˚ upravovat nastavení, jako napˇríklad iluminace, fraktální šum a jiné. Co se týˇce složitosti a intuitivnosti ovládání, je bezpochyby lepším programem Cinema4D. Renderovací systém jsem nastavil na standardní, formát a velikost je samozˇrejmˇe identická s 3ds Maxem. K dosažení mˇekˇcích stínu˚ jsem pˇrepl vyhlazování z geometrického na nejlepší a filtr na Gaussovský. Cinemˇe trval výpoˇcet s klasickými cˇ ásticemi 2 minuty a 21 vteˇrin, což je 1,2 vteˇriny na snímek. První snímky s minimem cˇ ástic se renderovaly za 0,5 vteˇriny. Ke konci animace už trval výpoˇcet jednoho snímku 3,5 sekundy. Rozdíl je tedy 3 sekundy. S modulem Pyrocluster se první snímky renderovaly po vteˇrinˇe, poslední snímek ale už trval 216 vteˇrin. Celkovˇe výpoˇcet trval 72 minut. Tento modul tedy rozhodnˇe není vhodný pro použití s vysokým poˇctem cˇ ástic. Co se týká výkonu v editoru, zde jsem nezaznamenal žádný výrazný propad v fps2 . Ve viewportu si Cinema zachovávala stabilních 30 snímku˚ za vteˇrinu jak s klasickými cˇ ásticemi, tak s modulem Pyrocluster.
5.1.3 Výsledky Po výkonnostní stránce se ukázalo, že Cinema4D mnohem lépe zvládá práci s cˇ ásticemi ve viewportu, který byl i se všemi cˇ ásticemi stále stejnˇe plynulý. Co se týká renderování, tak si Cinema poˇcínala také lépe, renderovací cˇ asy prvního a posledního snímku se lišily pouze o 3 sekundy. V pˇrípadˇe použití Pyroclusteru se s rostoucím poˇctem cˇ ástic nároˇcnost exponenciálnˇe navyšovala, ten ale místo 2D primitiv vykresluje volumetrické objekty, takže vˇetší nároky na výkon šly oˇcekávat. I 3ds Max si udržel docela dobrou rychlost vykreslování, propad mezi prvním a posledním snímkem byl osm vteˇrin. Zato jeho viewport se pˇri pˇrehrávání animace stával nepoužitelným.
2.
Frames per Second - Snímky za sekundu
26
ˇ ˚ ˚ 5. S ROVNÁNÍ VÝKONNOSTI R UZNÝCH CÁSTICOVÝCH SYSTÉM U
(a) Snímek z animace v 3ds Max
(b) Snímek z animace v Cinema4D
(c) Snímek z animace s modulem Pyrocluster
Obrázek 5.2: Srovnání vizuální kvality
27
ˇ ˚ ˚ 5. S ROVNÁNÍ VÝKONNOSTI R UZNÝCH CÁSTICOVÝCH SYSTÉM U
5.2
Tvorba trávy
Pro testování statických cˇ ástic jsem si vybral simulaci travnatého povrchu. Tráva je jedním z nejbˇežnˇejších povrchu, ˚ které se v pˇrírodˇe vyskytují, a proto se její simulace hojnˇe využívá napˇríklad ve hrách nebo architektonických vizualizacích. 5.2.1 Postup tvorby u Autodesk 3ds Max Do aplikace jsem si napˇred importoval objekt Landscape3 , který simuluje zvrásnˇelý povrch. Ten jsem pˇredtím vytvoˇril v Cinemˇe, protože ta jeho tvorbu implicitnˇe podporuje ve svých geometrických primitivech. Na nˇej jsem aplikoval modifikátor Hair and Fur (WSM), který jeho plochu automaticky poseje vlasovými vodítky. U vlasu˚ lze nastavit rˇ ada ruzných ˚ parametru˚ jako napˇríklad barva korˇ ene a koneˇcku, kudrnatost, kroucení a další. Mimo jiné lze vlasy i cˇ esat nebo zastˇrihávat. Nastavil jsem, že každý vlas se bude skládat z pˇeti cˇ lánku˚ a dynamiku jsem nechal vypnutou. Scénu jsem osvítil jednoduchým svˇetlem a na povrch aplikoval tmavˇe zelenou texturu. Na stíny jsem použil shadow mapu4 s rozlišením 1024x1024. Výpoˇcty jsem provedl pro 5 000 a 50 000 vlasu˚ na scénˇe v rozlišení 1280x720. První výpoˇcet trval 3ds Maxu 46, druhý už 326 sekund. 5.2.2 Postup tvorby u MAXON Cinema4D Po importování stejného povrchu, který jsem použil u pˇredešlého programu, jsem funkcí Add Hair5 pˇridal na jeho povrch vlasy. Možnosti nastavení a úpravy vlasu˚ jsou prakticky identické jako u 3ds Maxu. Jediný rozdíl je v tom, že tady se upravují v pˇriˇrazeném materiálu a nikoliv pˇrímo v modifikátoru. I zde jsem nastavil každému vlasu pˇet cˇ lánku˚ a vypnul dynamiku. Výpoˇcet 5 000 vlasu˚ se vyrenderoval za pouhou vteˇrinu, což je oproti Maxu naprosto skvˇelý výsledek. Dokonce i 50 000 vlasu˚ se vypoˇcetlo už za tˇri vteˇriny. Abych tedy více otestoval limity Cinemy, tak jsem zkusil 500 000 vlasu. ˚ U tˇech už trval výpoˇcet 189 sekund, i tak je to ale velice dobrý výsledek. Když jsem tento poˇcet zkusil u 3ds Maxu, tak mi zahlásil pˇreteˇcení pamˇeti. 3. 4. 5.
Pohoˇrí Stínová mapa Pˇridat vlasy
28
ˇ ˚ ˚ 5. S ROVNÁNÍ VÝKONNOSTI R UZNÝCH CÁSTICOVÝCH SYSTÉM U
Cinema4D nabízí místo vlasového modulu i jeho speciální odnož, Architectural Grass6 , který, jak název napovídá, slouží pˇrímo k tvorbˇe trávy. Nenastavuje se u nˇej ale poˇcet vlasu, ˚ nýbrž hustota osázení a proto jsem ho z tohoto testu vynechal. 5.2.3 Výsledky I v tomto testu se ukázalo, že v cˇ ásticových systémech má Cinema4D navrch. Poskytuje uživateli vizuálnˇe lepší výsledky ve výraznˇe kratším cˇ ase. Nástroje, které oba programy poskytují k úpravˇe vlasu, ˚ jsou pˇritom prakticky identické.
(a) Simulace trávy v 3ds Max
(b) Simulace trávy v Cinema4D
Obrázek 5.3: Srovnání vizuální kvality
6.
Architektonický trávník
29
6 Popis tvorby hudebního videoklipu Cílem praktické cˇ ásti této bakaláˇrské práce byla tvorba audiovizuálního klipu, kde by 3D objekty reagovaly na zvukovou stopu. V následující kapitole popíši a oduvodním ˚ své postupy v jednotlivých tvurˇ ˚ cích fázích.
6.1
Výbˇer softwaru
Pro tuto práci jsem se rozhodoval, zda použít 3ds Max nebo Cinemu4D. S obˇema programy jsem již v minulosti pracoval a s jejich znalostí jsem na pokroˇcilé úrovni, navíc oba nativnˇe podporují import zvukových záznamu. ˚ Jako svuj ˚ hlavní animaˇcní nástroj jsem si nakonec vybral Cinemu4D, protože mˇel v mých výkonnostních testech lepší výsledky a je více uživatelsky pˇrívˇetivý. I v praxi se pro podobná zadání používá spíše Cinema a to hlavnˇe díky svému MoGraph modulu a dalším nástrojum, ˚ které animátorum ˚ výraznˇe ulehˇcují práci. Napˇríklad modul CINEWARE umožnuje ˇ integrovat 3D scény pˇrímo do Adobe After Effects1 , cˇ ímž se mnohonásobnˇe zvyšuje efektivita práce.
6.2
Koncept
Prvním krokem byl výbˇer hudby. Aby jednotlivé efekty co možná nejlépe vynikly, hledal jsem písen, ˇ která má velký frekvenˇcní rozsah, pravidelný rytmus a dobˇre rozpoznatelné pˇrechody mezi jednotlivými sekcemi. Nakonec jsem se rozhodl pro písenˇ „Oblivion“ od kanadské zpˇevaˇcky Grimes, vlastním jménem Claire Elise Boucher. Její hudba je kritiky oznaˇcována jako atypická kombinace hlasových prvku˚ ovlivnˇených elektronikou, popem, hip-hopem, R’n’B a dokonce i stˇredovˇekou hudbou. [34] Pro tuto písenˇ již existuje hraný videoklip, který režírovala sama Grimes spolu s Emily Kai Bock. [35] Písenˇ jsem podle zmˇen v rytmu rozložil do šesti cˇ ástí a pro každou vymyslel nˇejaký cˇ ásticový efekt, který nejlépe ilustroval hudební tempo. V následujících podkapitolách pˇredstavím tvorbu tˇechto efektu. ˚
6.3
Tvorba základní scény
Celá animace se odehrává v jednom studiu, které je vymodelované ve stylu klasických fotografických studiích. Tento tvar dobˇre odráží svˇetlo a vytváˇrí 1.
Poˇcítaˇcový program pro tvorbu a kompozici filmových efektu˚
30
6. P OPIS TVORBY HUDEBNÍHO VIDEOKLIPU jemné pˇrechody. O nasvícení se starají cˇ tyˇri softboxy2 , které poskytují rozptýlené mˇekké svˇetlo. Za pomocí XPressa a User Data Manageru3 jsem si pro nˇe vytvoˇril jednoduché kontrolky na ovládání jejich intenzity a barvy svˇetla. Každý softbox má na své pˇrední stranˇe materiál s nastaveným Luminance4 kanálem a texturou, která simuluje zmaˇckání látky. Celou scénu osvˇetluje jedno globální svˇetlo a pro urˇcité scény jsem použil ještˇe jedno dodateˇcné svˇetlo pro osvícení z pohledu kamery.
6.4
Promˇena textu do objektu˚
Na zaˇcátku animace jsem pomocí nástroje MoText vytvoˇril dva texty, které pˇredstavují divákovi jméno zpˇevaˇcky a název písnˇe. Dále jsem vytvoˇril dvˇe geometrická primitiva, do kterých se poté text pˇremˇení. Jejich geometrii jsem rozdˇelil na pravidelnou mˇrížku tak, aby pˇri zmˇenˇe tvaru byly kusy pˇribližnˇe stejnˇe velké. Na objekty, které se na sebe mají promˇenit, jsem poté aplikoval Particle Geometry a tím jsem každému polygonu pˇriˇradil jednu cˇ ástici. Samotnou animaci promˇeny pak zaˇrídí generátor chytrých cˇ ástic zvaný TP-Blurp5 , kterému staˇcí nastavit klíˇcové snímky na zaˇcátku a konci animace. Bˇehem této scény jsem ještˇe animoval zorné pole kamery, která tak reaguje na rytmus hudby. Toho jsem dosáhl jednoduchým XPresso skriptem, kdy zvukový efektor pˇrímo ovlivnuje ˇ kamerový atribut Focal Length6 .
Obrázek 6.1: Pˇremˇena textu 2. 3. 4. 5. 6.
Typ studiového osvˇetlení Správa uživatelských dat Kanál ovlivnující ˇ svítivost materiálu TP-Rozmazání Ohnisková vzdálenost
31
6. P OPIS TVORBY HUDEBNÍHO VIDEOKLIPU
6.5
Animace klasických cˇ ástic s MoGraph modulem
Po chvíli se z válce uprostˇred scény stane ekvalizér, který na svých jednotlivých cˇ láncích zobrazuje intenzitu dané frekvence hudby. Zvukový efektor zde mˇení rozmˇer jednotlivých cˇ lánku˚ v ose Y. Duležité ˚ je, aby v jeho para7 metrech bylo nastaveno použití v režimu Step , jinak by se frekvenˇcní rozsah zprumˇ ˚ eroval, a všechny cˇ lánky by se hýbaly stejnˇe. Akustické pásmo se dá pˇrímo v Cinemˇe ještˇe dále upravovat, napˇríklad výškám jsem v tomto pˇrípadˇe nastavil vˇetší váhu pomocí lineární kˇrivky v záložce Filter Shape8 a posuvníkem Compression9 jsem zase zesílil projev jednotlivých tónu. ˚ Pohyb ekvalizéru mi pˇrišel moc trhaný, proto jsem ho ještˇe zmírnil Delay10 efektorem. Po spuštˇení ekvalizéru se z nˇej zaˇcnou sypat kuliˇcky, je v nˇem totiž umístˇený generátor cˇ ástic, který emituje koule. Tím, že jsem koule zachoval v primitivním tvaru, jsem mohl každé nastavit pouze malý poˇcet segmentu. ˚ Protože jsem zaškrtl nabídku Render Perfect11 , aplikace si sama dokáže segmenty pˇridat nebo ubrat dle potˇreby. Segmenty se tak použijí pouze pˇri detekci kolize. Simulace dynamiky je pro koule nastavena pˇriˇrazením štítku Rigid Body12 a pro studio (vzhledem k tomu, že se nehýbe) Collider Body13 . U studia bylo duležité ˚ nastavit v záložce Collision14 tvar Static mesh15 , protože defaultní automatická detekce pˇríliš nefunguje. Kuliˇcky jsou následnˇe vytaženy nahoru a zaujmou tvar tepající koule. Na scénˇe je totiž skrytá pulsující koule s nastavenou dynamikou, která obsahuje simulátor Attractor16 . V tomto momentu se k puvodním ˚ generovaným kuliˇckám pˇridají ještˇe druhé, které byly skryté na dnˇe bazénku. První skupina koulí má pˇriˇrazený Colour Shader17 , který si bere svou barvu ze zvukového efektoru. Hlubokým tónum ˚ pˇrísluší cˇ ervená barva a výškám naopak modrá. Druhá skupina kuliˇcek má zase jiný materiál, který pˇri výškách zvýší jas v Luminance kanálu a kuliˇcky se tak rozzáˇrí. Toho je 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
Krok Tvar filtru Komprese Prodlení Renderovat ideální kouli Tuhé tˇeleso Kolizní objekt Kolize Statický povrch Pˇritažení Barva shader
32
6. P OPIS TVORBY HUDEBNÍHO VIDEOKLIPU opˇet docíleno jednoduchým namapováním svítivosti na zvukový kanál v XPressu. Po urˇcité dobˇe pˇrestane Attractor pusobit ˚ a kuliˇcky se tak rozsypou. O to, aby na scénˇe nˇejaká nezustala ˚ stát, se stará další Attractor s nastavenou negativní hodnotou.
Obrázek 6.2: Pusobení ˚ Attractoru
6.6
Animace pomocí chytrých cˇ ástic a Hair modulu
V následující scénˇe je ze zemˇe vystˇrelena jedna cˇ ástice, která se pˇri pˇrekroˇ cˇ ení urˇcité síly basu˚ rozdˇelí na více cˇ ástic se stejným chováním. Cástice u každého snímku vyhodnocuje, zda je na zvukovém efektoru namˇerˇ ena intenzita basu˚ pˇresahující hodnotu 0,9. Pokud došlo k pˇrekroˇcení hodnoty, na její aktuální pozici se vytvoˇrí generátor cˇ ástic TP-Storm se zarovnáním podle globální matice a vystˇrelí na scénu další cˇ ástice, které jsou pˇriˇrazeny do vyšší skupiny cˇ ástic. Tˇechto skupin je celkovˇe sedm, poté už se cˇ ástice ˇ nedˇelí. Cástice jsou zobrazeny pomocí Particle Geometry18 a jejich trasa se vykresluje MoGraphovým nástrojem Tracer19 . Pro optimalizaci výpoˇctu a lepší kontrolu nad barvou a tloušt’kou cˇ ástic jsem zde použil materiál urcˇ ený pro modelování vlasu. ˚ 18. Geometrie cˇ ástic 19. Vykreslení
33
6. P OPIS TVORBY HUDEBNÍHO VIDEOKLIPU
Obrázek 6.3: Efekt s chytrými cˇ ásticemi
6.7
Koule z vláken
Pro tento efekt jsem použil zdarma dostupný plugin do Cinemy4D zvaný UberTracer [36], který rozšiˇruje funkcionalitu základního Tracer objektu a umožnuje ˇ propojení více objektu. ˚ Na skryté kouli se na náhodných místech zaˇcnou rodit cˇ ástice, které jsou dále ovlivnovány ˇ vˇetrem a tˇrením. Pokud je vzdálenost dvou cˇ ástic vˇetší než 1cm a menší než 10cm, vytvoˇrí se mezi nimi spojení. Síla vˇetru se opˇet odvíjí od síly hudby. Toho je docíleno pomocí objektu Range Mapper20 , který je schopen namapovat urˇcitý rozsah na jiný. V tomto pˇrípadˇe jsem namapoval hodnotu zvukového efektoru (0-1) na hodnotu turbulence vˇetru (50-150). Pˇri náhlé zmˇenˇe rytmu se vypne tˇrecí síla a cˇ ástice odletí pryˇc. Tato scéna je pˇri vˇetším poˇctu cˇ ástic velmi nároˇcná, na mém poˇcítaˇci se poˇcítala asi 45 hodin a pˇri nejvˇetším poˇctu cˇ ástic trval výpoˇcet jednoho snímku až 6 minut.
6.8
Skákající cˇ ástice
ˇ Tato scéna je rˇ ešena velmi podobnˇe jako efekt v sekci 6.6. Cástice se rozdˇelí a zdánlivˇe poskakují po povrchu, dokud nevybuchnou v záplavˇe cˇ ervených disku. ˚ Ve skuteˇcnosti je každá cˇ ástice pˇri dotyku s podlahou „zmrazena“ a 20. Pˇrekladaˇc rozsahu
34
6. P OPIS TVORBY HUDEBNÍHO VIDEOKLIPU
Obrázek 6.4: Použití pluginu UberTracer
na jejím místˇe se vytvoˇrí TP-Storm generátor, který vystˇrelí další. Po nˇekolika odrazech se místo jedné cˇ ástice jich vystˇrelí nˇekolik a ty jsou pˇriˇrazeny do jiné skupiny cˇ ástic. Tato skupina je namapována na Cloner objekt, který ˇ místo cˇ ástic zobrazí cˇ ervené disky ruzných ˚ velikosti. Cástice v této skupinˇe už nejsou ovlivnˇeny gravitací, ale sférickým vˇetrem, který dodává výbuchu organický vzhled.
Obrázek 6.5: Vybuchující cˇ ástice
35
6. P OPIS TVORBY HUDEBNÍHO VIDEOKLIPU
6.9
Implementace záznamu Microsoft Kinect
Mezi vybuchlými cˇ ásticemi se zformuje obraz osoby. K tomuto efektu byl použit záznam poˇrízený k hudebnímu projektu Moullinex Catalina. [37] Ten jsem nahrál do programu za pomocí Python skriptu, který je volnˇe dostupný na jejich internetové stránce. Takto vzniklým bodum ˚ jsem pˇriˇradil Cloner objekt s disky a za pomocí nˇekolika Random21 efektoru˚ docílil iluzi zformování obrazu. Záznam byl ale pˇríliš krátký a tak jsem ho podruhé pustil pozpátku. Na úplný závˇer zaˇcnou ve studiu blikat a vyhasínat softboxy do rytmu hudby, což je provedeno pomocí XPresso skriptu na svˇetlech softboxu a na Luminance kanálu textury softboxu.
Obrázek 6.6: Záznam z Microsoft Kinect
6.10 Nastavení kamer a renderingu Pˇri tvorbˇe klipu jsem se snažil o iluzi kontinuálního pohybu jedné kamery. Ve scénˇe jsem jich ale ve skuteˇcnosti použil nˇekolik a pˇrepínal mezi nimi pomocí Morph Camera22 objektu. U dvou makro zábˇeru˚ se kamery pak pohybovaly po kruhové kˇrivce. 21. Náhodnost efektor 22. Morf kamery
36
6. P OPIS TVORBY HUDEBNÍHO VIDEOKLIPU Animaci jsem renderoval v rozlišení Full HD, tedy 1920x1080 obrazových bodu. ˚ U formátu jsem vybíral mezi TIFF a PNG. Oba jsou to bezztrátové formáty podporující pruhlednost, ˚ výhodou PNG je menší velikost, která je ale vykoupena delšími naˇcítacími cˇ asy. Vzhledem k tomu, že jsem neoˇcekával pˇríliš mnoho práce v postprodukci, zvolil jsem menší PNG.
6.11 Stˇrih a export v Adobe After Effects Po importu a chronologickém seˇrazení obrazových sekvencí v programu jsem v místu pˇrekryvu dvou stopáží nastavil sekundový pˇrechod z jedné na druhou. Kromˇe jemných úprav kontrastu a barev jsem nic jiného needitoval. Pro výsledné video jsem použil kodek H.264, což je sice ztrátový formát, ale jeho rozpoznatelná ztráta je minimální. Je používán ke kódování na Blu-ray a stává se cˇ ím dál tím populárnˇejší i pro pˇrenos internetového videa. Cílovou bitrate23 jsem nastavil na 15 Mbps a maximální povolenou na 30 Mbps. Výsledné video tak má 223 sekund a 400 MB.
Obrázek 6.7: Pracovní plocha programu Adobe After Effects
23. Pˇrenosová rychlost. Udává, kolik bitu˚ informace je pˇreneseno za jednu sekundu
37
7 Závˇer Práce shrnuje základní problematiku cˇ ásticových systému, ˚ která je následnˇe pˇredvedena na nˇekolika praktických pˇríkladech. V první cˇ ásti jsem popsal poˇcátky cˇ ásticových systému˚ položené pionýry 3D grafiky v oblasti filmového prumyslu ˚ a jejich dnešní využití v ostatních odvˇetvích. V další kapitole jsem se vˇenoval technické stránce vˇeci a vysvˇetlil, jak cˇ ásticové systémy fungují. Popsal jsem jejich implementaci v rozliˇcných nástrojích dvou nejoblíbenˇejších 3D grafických editoru. ˚ Poté jsem na dvou praktických pˇríkladech tyto cˇ ásticové systémy otestoval. Závˇery z tˇechto testu˚ jsem použil k výbˇeru správného softwaru pro praktickou cˇ ást této práce, což byla vizualizace audia v hudebním videoklipu. V poslední kapitole jsem popsal tvorbu tohoto videoklipu a oduvodnil ˚ svuj ˚ postup v rozliˇcných dílˇcích fázích. ˇ Cásticové systémy jsou velmi složitá a doposud nepˇríliš probádaná oblast 3D grafiky a myslím si, že by toto téma mohlo být prohlubováno i v navazujících pracích.
38
Literatura [1] REEVES T. William. Particle systems - a technique for modeling a class of fuzzy objects, 1983. http://zach.in.tu-clausthal.de/teaching/ vr_literatur/Reeves%20-%20Particle%20Systems.pdf. Citováno: 20. 4. 2015. [2] Lucasfilm Ltd. Genesis bomb explosion. https://www.evl.uic.edu/ aej/527/pics/genesis.jpg. Citováno: 9. 5. 2015. Obrazový zdroj. [3] REEVES T. William. Approximate and probabilistic algorithms for shading and rendering structured particle systems, 1985. https://zimbra.inria.fr/home/
[email protected]/ Briefcase/Cours/p313-reeves.pdf. Citováno: 7. 5. 2015. [4] SMITH Ray Alvy. white.sand. http://alvyray.com/Art/Images/ WhiteSandsLg.gif. Citováno: 9. 5. 2015. Obrazový zdroj. [5] REYNOLDS W. Craig. Flocks, herds, and schools: A distributed behavioral model, 1987. http://www.red3d.com/cwr/papers/1987/ SIGGRAPH87.pdf. Citováno: 24. 4. 2015. [6] LOMBARDO Jean-Christophe and PUECH Claude. Oriented particles: A tool for shape memory objects modelling, 1995. https: //hal.inria.fr/inria-00510134/document. Citováno: 25. 4. 2015. [7] RUSSEL Steve. Spacewar! http://images.techhive. com/images/idge/imported/article/jvw/2006/05/ jw-0529-funandgames1-100156062-orig.gif. Citováno: 9. 5. 2015. Obrazový zdroj. [8] Columbia Pictures, Marvel Entertainment, Arad Productions Inc., and Matt Tolmach Productions. The amazing spider-man 2. http:// img.gawkerassets.com/img/198hhzoxv9uxfjpg/ku-xlarge.jpg. Citováno: 9. 5. 2015. Obrazový zdroj. [9] ŽÁRA Jiˇrí, BENEŠ Bedˇrich, SOCHOR Jiˇrí, and FELKEL Petr. Moderní poˇcítaˇcová grafika. Computer Press, 2004. [10] ANSYS Inc. Ansys fluid dynamic features. http://www.ansys. com/staticassets/ANSYS/General%20Articles%20-%20Products/ FluidGroupingPage_pic2.png. Citováno: 9. 5. 2015. Obrazový zdroj. 39
LITERATURA [11] The 3D Artist Team. 12blender. http://www.3dartistonline. com/news/2015/01/build-a-blender-castle-in-19-steps/12_ blender/. Citováno: 9. 5. 2015. Obrazový zdroj. [12] MÜLLER Matthias, CHARYPAR David, and GROSS Markus. Particle-based fluid simulation for interactive applications, 2003. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1. 121.844&rep=rep1&type=pdf. Citováno: 1. 5. 2015. [13] Next Limit Technologies. Foam with sph fluids. http: //support.nextlimit.com/download/attachments/24641582/foam_ result_01.jpg?version=1&modificationDate=1398685056000&api= v2&effects=border-simple,shadow-kn. Citováno: 9. 5. 2015. Obrazový zdroj. [14] CHANG T. Johnny, JIN Jingyi, and YU Yizhou. A practical model for hair mutual interactions, 2002. http://www.cs.uu.nl/docs/vakken/ mssw/papers/A%20Practical%20Model%20for%20Hair%20Mutual% 20Interactions.pdf. Citováno: 7. 5. 2015. [15] Pixar Animation Studios. Pixar making of “merida” designing and developing a character. http://i2.wp.com/www.cgmeetup.net/home/ wp-content/uploads/2013/02/Pixar-Making-of-Merida-3.jpg. Citováno: 9. 5. 2015. Obrazový zdroj. [16] REYNOLDS Craig. Stanley and stella in: Breaking the ice, 1987. http: //www.upf.edu/hipertextnet/_img/soler1.jpg. Citováno: 9. 5. 2015. Obrazový zdroj. [17] HOUSE H. Donald and BREEN E. David. Cloth Modeling and Animation. A K Peters, Ltd., 2000. [18] TIŠNOVSKÝ Pavel. Modelování a vizualizace elastických tˇeles pomocí systému vázaných cˇ ástic, 2003. http://www.elektrorevue.cz/ clanky/03006/kap_4.htm. Citováno: 2. 5. 2015. [19] Walt Disney Pictures and Pixar Animation Studios. Brave. http://www.weeatfilms.com/wp-content/uploads/2012/06/ brave-merida-fergus-lords-e1340665619411.jpeg. Citováno: 9. 5. 2015. Obrazový zdroj. [20] LANDER Jeff. The ocean spray in your face. Game Developer, 1998. https://www.lri.fr/~mbl/ENS/IG2/devoir2/files/docs/ particles.pdf. Citováno: 28. 4. 2015. 40
LITERATURA [21] Wikipedia Commons. Particle emitter. http://upload.wikimedia. org/wikipedia/en/1/1c/Particle_Emitter.jpg. Citováno: 9. 5. 2015. Obrazový zdroj. [22] Wikipedia Commons. Strand emitter. http://upload.wikimedia. org/wikipedia/en/4/44/Strand_Emitter.jpg. Citováno: 9. 5. 2015. Obrazový zdroj. [23] BURG van der John. Building an advanced particle system, 2000. http://www.gamasutra.com/view/feature/131565/building_ an_advanced_particle_.php. Citováno: 7. 5. 2015. [24] BURG van der John. A global overview of the sytem we are going to build. http://www.gamasutra.com/features/20000623/vanderburg_ 01.gif. Citováno: 9. 5. 2015. Obrazový zdroj. [25] LATTA Lutz. Building a million-particle system, 2004. http://www.gamasutra.com/view/feature/130535/building_a_ millionparticle_system.php. [26] MAXON Computer. Maxon | 3d for the real world, 2015. http: //www.maxon.net/products/cinema-4d-studio/overview.html. Citováno: 10. 5. 2015. [27] cebas Visual Technology Inc. cebas thinkingparticles 6, 2014. http:// www.cebas.com/?pid=productinfo&prd_id=187. Citováno: 10. 5. 2015. [28] Autodesk Inc. 3d modeling and rendering tools, 2015. http://www. autodesk.com/products/3ds-max/features/all/gallery-view. ˇ Jan. Mistrovství v 3ds Max. Computer Press, 2009. [29] KRÍŽ [30] Next Limit Technologies. What is realflow?, 2015. http://support. nextlimit.com/pages/viewpage.action?pageId=22216716. [31] Jawset Visual Computing. Jawset visual computing, 2014. https:// www.jawset.com/. [32] Mk Sz. Turbulencefd lightwave. http://i.ytimg.com/vi/ Yw0tElCyFDA/maxresdefault.jpg. Citováno: 9. 5. 2015. Obrazový zdroj. [33] DRAPER Pete. Deconstructing the Elements with 3ds Max. Focal Press, 2009. 41
LITERATURA [34] RYTLEWSKI Evan. Grimes: Visions, 2012. http://www.avclub.com/ review/grimes-emvisionsem-69604. Citováno: 9. 5. 2015. [35] Arbutus Records. Grimes - oblivion. https://youtu.be/JtH68PJIQLE. [36] Cinema4d plugins, c4dplugins/.
2011.
http://www.genemagtoto.com/
[37] CALÇADA Luís. Moullinex (catalina music video), 2011. http://luiscalcada.scienceoffice.org/video/ moullinex-catalina-videoclip/.
42
Obsah pˇrílohy Cinema4D ∙ ∙ ∙ ∙ ∙ ∙
Scéna s testováním kouˇre ve formátu .c4d Animace s klasickým kouˇrem ve formátu .avi Animace s Pyrocluster kouˇrem ve formátu .avi Scéna s testováním trávy ve formátu .c4d První scéna z tvorby videoklipu ve formátu .c4d Druhá scéna z tvorby videoklipu ve formátu .c4d
3ds Max ∙ ∙ ∙
Scéna s testováním kouˇre ve formátu .max Animace s kouˇrem ve formátu .avi Scéna s testováním trávy ve formátu .max
Videoklip ∙ ∙
Videoklip ve formátu .mp4 Sekvence bodu˚ pro Microsoft Kinect
43