finalRender - efekt "caustic" - 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

finalRender - efekt "caustic"

final render

22. srpna 2002, 00.00 | Efekt "caustic" vzniká při průchodu světla průhlednými materiály (např. koncentrované ohnisko světla za lupou).
Jak dosáhnout tohoto efektu pomocí finalRenderu pro 3DS MAX?

{Úvod}

Dnes navážeme na úvodní část seriálu o rendereru finalRender pro 3DS MAX. Budeme se věnovat problematice efektu zvaného "caustic".

TIP pro minulý díl : Určitě jste si již dostatečně vyhráli s nastavením fR pro GI, tak jste si jistě všimli jedné věci, a to, že v nastavení materiálu finalRender je záložka fR local parameters, zde můžeme nastavit všechny parametry pro každý jednotlivý materiál a tím zajistit, že u materiálů, které jsou aplikované na jednoduché objekty použijeme nízké hodnoty a u jiných vyšší, tím dosáhneme optimalizace parametrů a zkrátí se doba renderingu. Totéž samozřejmě platí i pro caustic.

Caustic je efekt, který vzniká při průchodu světla průhlednými materiály (např. koncentrované ohnisko světla za lupou) nebo při odrazu světla od reflexních materiálů (prasátka od zrcadla). Tento efekt je tím výraznější, čím je plocha, od které se světlo odráží nebo kterou prochází, zakřivenější. Světlo se díky zakřivení koncentruje na jednom místě a efekt je viditelnější.


Příklady caustic při průchodu světla průhledným předmětem - čočkou (refractive caustic - vlevo)
a caustic při odrazu (reflective caustic - vpravo)

Dále je možné tento efekt spatřit při průchodu světla například prašným prostředím, kde koncentrované paprsky při průchodu vzduchem naráží na prachové částice a lze je díky tomu vidět. Tento efekt je ve fR nazýván Volumetric Caustic, a protože je vidět pouze pokud jsou v prostoru nějaké částice, je tento efekt spojený s vlastností světla - Volumetric light.


Příklady Volumetric Caustic

Nyní si na příkladech ukážeme jednotlivé typy efektu caustic. Prvním příkladem bude prostor bazénu, kde vodní hladina je průhledná (refractive caustic bude vidět pod hladinou vody) a zároveň odráží okolí (reflective caustic na zdech). Scénu si můžete stáhnout zde tut2.zip.

Povedeme první rendering pouze MAX scanline.

Scéna je osvětlena třemi světly na pravé straně místnosti, takže efekt bude vidět na stropě a na protější (levé) stěně. Nyní si musíme říct, že efekt caustic je velice náročný na paměť - např. šest světel pravidelně umístěných na stropě s vyšším nastavení kvality caustic zabírá 350 MB paměti, proto jsem použil pouze tři světla. Zkrátí se i doba renderingu. Na ukázku to bude stačit.

Za prvé nastavíme ve fR global settings v části caustic parameters zaškrtneme enable caustic.
Accurancy nastavíme na 20 (tento parametr určuje kvalitu nebo spíše rozostření efektu, vyšší hodnota efekt rozmaže, nižší hodnota udělá efekt ostřejší, což podle mne je lepší, ale záleží na tom , čeho přesně chcete docílit)
Radius 1,0 (radius určuje jak velký prostor kolem určitého pixelu se bude prohledávat pro zachycení fotonů světla.
Vypneme Reuse Photons aby se výpočet prováděl po každé změně parametrů.

Dále nastavíme v properties jednotlivých objektů ten parametr, který od daného objektu požadujeme. Vodní hladina tedy generate caustic všechny ostatní objekty recieve caustic.

Totéž co v properties objektů nastavíme pro jednotlivé materiály v material editoru.

[-more-]{Vodní hladina}

Podrobněji si popíšeme nastavení materiálu vodní hladiny, ten se nachází ve slotu číslo 2. Ambient, Diffuse nastavíme na modrou barvu, Opacity na 50 (tento parametr nastavuje průhlednost objektu, narozdíl od standartního materiálu 3D studia neurčuje pouze průsvitnost, ale používá se i při výpočtu lomu světla, tedy se chová jako parametr transparency u raytrace materiálu 3d studia). Dále nastavíme Reflection level na 20, což je míra odrazu a IOR 1,33 což je index lomu světla pro přechod voda-vzduch. Dále nastavíme filter color na modrou barvu (to nám zajistí obarvení světla na modro pod vodní hladinou).

V nastavení světla je složka Indirect Illumination Params. Parametry stačí nastavit u jednoho světla, ostatní se upraví v našem příkladě automaticky. Pokud zkoušíte caustic na vlastní scéně musíte upravit každé světlo, od kterého budete chtít, aby caustic generovalo. Energy dáme na 50000 (čím více energie tím je efekt viditelnější) a parametr Caustic photons necháme na 10000. Někdy po renderingu není vidět žádný efekt, to může být způsobeno nízkým parametrem energy. Sílu efektu můžeme též ovlivňovat pro každý materiál zvlášť - u každého parametru recieve, generate je položka multiplier, která toto ovlivňuje. Je tu ještě parametr GI Photons, který fR nepoužívá, GI se nastavuje v global settings tak jak jsme si ukazovali v minulém díle.

Provedeme rendering. Vidíme již efekt, ale evidentně je zapotřebí více fotonů. Nyní jsou na stěnách a na dně bazénu pouze shluky teček.

Zvýšíme Caustic photons na 100000. Již je možno rozeznat efekt, jak jej známe ze skutečnosti, ale jdou poznat ještě jednotlivé tečky fotonů. Tyto můžeme odstranit zvyšováním parametrů Accurany avšak Radius efekt se začne vytrácet a doba renderingu poroste.

Lepší je zvýšit Caustic photons = 500000. Doba výpočtu fotonů se značně prodloužila, ale rendering proběhl celkem rychle. Toto řešení je vhodnější, protože čekáme pouze jednou při výpočtu fotonů a pomocí parametru reuse solution zachováme výpočet pro další použití, následné výpočty renderingu jsou již rychlejší.
Na stěnách je vidět efekt již v pořádku (reflective caustic) na stropě je samozřejmě také, ale je špatně vidět, protože zde není osvětlení přímým světlem. Pod hladinou lze také rozpoznat odlesky (refractive caustic).

Dále si ukážeme,jak záleží efekt caustic na parametrech vodní hladiny. Jsou zde uvedeny tři příklady zvlnění hladiny. První je téměř klidná hladina, druhý mírně zvlněná (zde již efekt je dobrý ale odlesky jsou ještě příliš velké, dále by byl náš předchozí příklad a nakonec třetí, kde je hladina příliš zvlněná a efekt caustic už je příliš rozbitý. Toto ukazuje, že pokud se nedaří efekt vytvořit správně, nemusí být na vině parametry fR, ale objekt který caustic vytváří.



Po nastavení osvětlení GI a otexturování objektů dostaneme takovýto výsledek. Druhý obrázek ukazuje pohled pod hladinou.


[-more-]{Volume caustic}

Na závěr si ukážeme Volume caustic. Scéna je zde volcaus.zip. Přidáme v parametrech světla Atmospheres & Effects fRVolumeLight.

A v jeho Setup nastavíme tyto parametry :
Density : 2,0
Zaškrkneme Recieve Caustic.
Step Size
: 2 čím je menší tím je efekt přesnější, Accurancy 100 a Radius 5, které fungují podobně jako u 2D caustic. Multiplier 5 násobí efekt, čím více, tím je více vidět.

Stiskneme tlačítko globals, abychom se dostali do global settings. Zde zaškrtneme Enable Volume Caustic. Nastavíme World Step Size 10 (přesnost efektu, zde pozor při nízkých hodnotách je již čas renderingu příliš dlouhý a kvalita se zvýší pouze minimálně, samozřejmě záleží na typu scény) a Max. Ray Lenght na 100 (délka, po kterou se budou jednotlivé paprsky prohledávat na přítomnost fotonů, pokud caustic efekt najednou skončí, jako by byl utnutý a evidentně má pokračovat dál, je třeba zvýšit tento parametr.

Dále v global parameters nastavíme Total Internal Reflections na 0 - nyní nepotřebujeme odrazy uvnitř průhledných těles - caustic efekt se rozbije a neodpovídá skutečnosti pokud je parametr nastaven na větší číslo (samozřejmě opět záleží na typu scény).

Provedeme rendering.

V material editoru u materiálu skla nastavíme v map slotu bump mapu noise, tím se nám povrch koule zvlní. fR toto při výpočtu caustic zohlední a výsledek vypadá takto. Také jsem nastavil filter color na žlutou a zapnul u světla stíny typu frShadowMap (tento stín se musí předrenderovat v nastavení fRshadowMap, kde je tlačítko Render Lights).

Příště se budeme zabývat tématem "finalRender a kompozice".

Obsah seriálu (více o seriálu):

Tématické zařazení:

 » 3D grafika  

 

 

 

 

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

Uživatelské jméno:

Heslo: