Hygiena je důležitá, budeme čistit zub, v CINEMĚ 4D - 3D grafika - 3Dscena.cz: 3D grafika jako na dlani

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:



3D grafika

Hygiena je důležitá, budeme čistit zub, v CINEMĚ 4D

29. ledna 2009, 00.00 | Při přípravě tohoto dílu jsem uvažoval nad tím, ostatně jako obvykle, jak jej pojmenovat. Ve vší úctě jsem si říkal, že to musí vycházet z reklam. Ne že bychom přitom rozlévali kvanta modré tekutiny a byli šťastní při svých, cizích a ryzích dnech, nebudeme ani nosit sedačky, či s oblíbenými přáteli řešit potíže s prostatou, pokud možno veřejně, v restauraci s kozlem, ale vyčistíme zuby v ústech. Notně, kartáčkem a bez explozí...

Než začnu, tak k mému uvedenému příkladu. Systém byl odvozen v rámci konzultace s Láďou Mikluše, který tedy recipročně zapůjčil svůj chrup. Tedy ne úplně svůj, to by si musel zakoupit nový, či by zde byl předpoklad, že mu bude chybět a nepomohlo by ani to nejlepší lepidlo upevňující tesáky na plexi.

Co budeme potřebovat...

K naší simulaci kartáčku, který je schopen odstranit i ten nejpevnější zubní plak potřebujeme následující: CINEMU 4D a modul Hair, ničeho více. Celá naše simulace bude probíhat v této super leštící kombinaci. I gauč Vám pak vynesou...

V rámci popisu uvedeného systému se zaměříme na systémové předpoklady, není tedy cílem „opis“ celého nastavení, jako spíše demonstrace obecného postupu, který by bylo možné využít při simulaci podobného určení...

00

Štětiny

Základním interaktujícím prvkem systému jsou štětiny. Tyto štětiny jsou upevnění v obroučce kartáčku a pokud si prohlédneme podobné výrobky zjistíme, že štětiny nejsou úplně zcela rovnoběžné, ale že se kuželovitě rozevírají. Upozorňuji, že tato nepravidelnost je docela dost důležitá z pohledu dalších interakcí a proto je vhodné, aby nebyly všechny štětiny rovnoběžné (i u normálních kartáčků). Proto jsem nechal Hair generovat na maličkém prohnutém disku (prohnutí je velmi, velmi malé), který jsem získal konverzí (a následným smazáním druhého záklopu a válcové části) primitiva Barel.

01

Délka štětin je definovaná základním parametrem objektu Hair/Cesty/Délka a také přechodem – kruhovým v kanále Délka materiálu vlasů. Přechod má ve svém středu, vlevo barvu bílou a vpravo světle šedou. Interpolace je lineární, čímž se vytvoří kuželové sestřižení kartáčku. Mimochodem, ještě je zde jedna podmínka. Objekt ze kterého štětinky vyrůstají musí mít UV mapu!

02

Na svém příkladu jsem volil malou délku, stačilo mi cca 4.5 jednotek. Tato hodnota ale samozřejmě závisí na velikosti Vaší scény a není tedy z pohledu popisu zase tak podstatná.

Co naopak podstatné je? Je to zejména úvaha a vycházející znalost chování dynamiky vlasů, tedy modulu Hair. Dynamiku vlasů lze řídit a to velmi komplexně, obecně ale lze říci, že deformace probíhá per segment, tedy pokud budeme mít vlas dlouhý 10 jednotek s 8 segmenty, pak tento vlas se vlivem gravitace ohne směrem dolu více (dále), než vlas o dvou segmentech. Ano, my můžeme tyto efekty opravdu široce řídit (po délce vlasu), ale nám bude stačit, pokud si simulaci opravdu zásadně zjednodušíme a vytvoříme si cesty vlasů jen a pouze o dvou segmentech. Mimochodem, samotná segmentace vlasů při renderingu je pak otázkou separátního nastavení. Na stránce Cesty tedy nastavíme parametr Segmentů na 2...

Přejdeme do stránky Vlasy, která na stránku Cesty přímo navazuje. Zde snížíme počet „chlupů“, vláken na požadovanou hodnotu a můžeme zvednout hodnotu parametru Segmentů na 12. Co jsme udělali? Je to velmi prosté. Výsledný efekt je shodný s tím, co by se stalo pokud bychom měli NURBSovou křivku o třech bodech (dvou řídích úsečkách) a interpolací bychom generovali výsledný tvar o 12 segmentech. Čím vyšší hodnota segmentů zde bude, tím hladší bude každá jedna štětina kartáčku.

Další významné parametry, které musíme změnit, najdeme na stránce Generování. Na této stránce můžeme definovat typ generovaného efektu. Hair primárně využívá systém post efektu, ale stejně tak můžeme generovat skutečné „štětiny“. V takovém případě vypneme volbu „Renderovat vlasy“ a aktivujeme volbu Typ/Kruh.

Všimněme si, že štětinky jsou nyní do špičky, tedy do kuželů. To je tím, že je v nastavení materiálu objektu Hair v parametru Délka nastaveno, že každá štětina začíná na délce 1 a končí na 0,1. Obě hodnoty zadáme na stejné číslo. Osobně jsem použil hodnoty 0,5, opět ale mohu zopakovat, že tato hodnota je závislá na velikosti celé scény...

Než si budeme hrát s nastavením dynamiky, tak musíme upravit jednu sílu, která nám dynamické chování rovněž zásadně ovlivňuje. A to gravitaci. Její nastavení najdeme v záložce Síly, kde nastavíme hodnotu gravitace na 0.

A v tento okamžiku musíme naše téma opustit, na pořad přichází kolizní objekty, které svými vlastnostmi určí chování našeho kartáčku...

03

Kolizní objekty

Jako kolizní objekty jsem použil zmíněný model zubů a dásně, ale stejně tak bychom mohli použít jen jednoduché stylizované „válečky“ či něco podobného. Pro přesnější práci jsem si vybral jen zuby, se kterými jsem chtěl nechat kolidovat svůj kartáček a také dáseň. Vybrané objekty jsem zkopíroval, zvýšil jejich segmentaci a následně na aplikoval vlastnost Správce objektů/Vlastnosti/Hair vlastnosti/Kolize s vlasy.

Se zvýšením segmentace souvisí skutečnost, že jsem toto nastavení nemusel používat – přesto jsem jej použil. Modul Hair umí analyzovat kolize i na objektech HyperNURBS, ale jelikož jsem chtěl kolizní objekty ještě trochu zmenšit ve směru normály přišlo mi přesnější, pokud tuto úpravu ve velikosti každého jednoho kolizního objektu provedu na subpolygonech, než na polygonech původních.

Vybereme si v režimu polygonů všechny kolizní objekty a provedeme příkaz „Posun ve směru normály“ v negativním směru a hodnotě cca -0,1 (abych byl opět přesnější, posuneme je o hodnotu, která je hodnotou kolizního poloměru štětin s povrchem, ve svém příkladu jsem následně nastavil tuto hodnotu na 0,1 a tudíž by bez posunu ve směru normály končily štětiny vizuálně ve vzduchu, posunem polygonů dovnitř jsem tomu zabránil).

04

Dynamika

V nastavení dynamiky vlasů je pár parametrů, které jsou z našeho pohledu skutečně podstatné. Z hlediska gravitace by býval poměrně významný parametr „Masa“, jenže my gravitaci vypnuli a tak nás nemusí znervózňovat. Důležitý ale je parametr poloměru, v mém případě 0,1. Další parametry jsou významné z pohledu charakteristického chování štětin přičemž nejvýznamnější jsou parametry (z pohledu tohoto chování) Tlumení, Ztuhlost, Držet výchozí a Limit pružnosti. Tlumení určuje intenzitu oscilace při dramatické změně polohy, naše štětinky by tedy měly mít vyšší hodnotu tlumení (60%), parametr Upevnit Kořeny jsem nastavil na 100%, tedy první bod je zcela upnut na své místo, Ztuhlost, tedy řekněme nepoddajnost je 20%, Držet výchozí opět pomáhá s návratem do původního stavu. Tato hodnota může zapříčinit že vlasy propadnou skrz objekt, pak je nutné ji případně snížit nebo se ujistit, že tato nepřesnost nebude vizuálně patrná (20%). Limit pružnost je parametrem, který mimo jiné určuje dynamický „návrat“ do výchozí polohy, nebo setrvání v poloze deformované (je li hodnota nízká). Nakonec jsem použil hodnotu 45%.

Tuhost a také přesnost analýzy štětinek kartáčku je ale závislá ještě na jednom opravdu zásadním nastavení. Na nastavení kvality samotné simulace, tedy kvality simulace dynamických jevů. Tyto jevy jsou analyzovány od nejhrubší analýzy s jedním průchodem přes další testy až testu poslednímu, přičemž se výsledek stále zpřesňuje. Druhotný efekt je, že se také „zklidňuje“ a to je přesně to, co potřebujeme. Aby se tedy štětinky nechovaly jako vlasy, ale skutečně jako štětiny, je nutné na stránce „Dynamika“ přejít do složky „Pokročilé“ kde je parametr kroky (počet postupných analýz) a opakování, první parametr jsem nastavil na 6 a druhý na 8.

05

A to je vše...

06

Ostatní nastavení

Další nastavení v systému vlastně nejsou. Co považuji za podstatné z pohledu animace je hierarchická struktura, aby byly objekty správně seřazené, ale jinak nic. Nastavení materiálu byla také velmi prosté už proto, že mým cílem nebyla vyloženě realističnost, jako spíše „reklamní“ vzhled založený na hodně přetažených barvách. Z toho důvodu skutečně stačily barvy, odrazivost, jedno vzdálené světlo umístěné v poloze slunce na HDRi mapě a efekt Ambient Occlusion – okolní prostředí.

Tématické zařazení:

 » 3D grafika  

 

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: