Distribuované sledování paprsku 1996-2015 Josef Pelikán, CGG MFF UK Praha http://cgg.mff.cuni.cz/~pepca/ pepca@cgg.mff.cuni.cz DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 1 / 24
Distribuované sledování paprsku zvýšení kvality (věrnosti) generovaného obrazu měkké stíny, odrazy a lomy světla rozmazání pohybem simulace hloubky ostrosti světelného objektivu rozklad světla při lomu (index lomu závisí na ) zavedení nových proměnných do obrazové funkce úhel odrazu, lomu, vlnová délka světla, pozice bodu na světelném zdroji, na čočce objektivu, čas,.. DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 2 / 24
Vznik neostrého odrazu N ideální (ostrý) odraz V A R skutečný (neostrý) odraz DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 3 / 24
Výpočet neostrého odrazu Ostrý odraz: I R I V (jeden odražený paprsek) Neostrý odraz:,,,, I V I R BRDF d d koule (vážený integrální průměr přes všechny směry odrazu) funkce odrazivosti DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 4 / 24
Ukázka neostrého odrazu 400 spp DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 5 / 24
Neostrý lom N V A skutečný (neostrý) lom T ideální (ostrý) lom DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 6 / 24
Vznik měkkého stínu plošný světelný zdroj plný stín (umbra) překážka polostín (penumbra) DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 7 / 24
Výpočet měkkých stínů Příspěvek bodového světelného zdroje: I A I L 0 pokud je zdroj vidět z bodu A jinak Příspěvek homogenního plošného zdroje: % I A I S L podíl z bodu A viditelné části světelného zdroje DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 8 / 24
Výpočet měkkých stínů Příspěvek nehomogenního plošného zdroje: I A IL u, v vis A, u, v dudv plocha zdroje funkce viditelnosti vis A, u, v 1 0 pokud je S(u,v) vidět z bodu A jinak DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 9 / 24
Ukázka měkkých stínů 256 spp DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 10 / 24
Rozmazání rychlým pohybem dráha tělesa s(t) snímaný interval: (doba otevření závěrky) [ t 1, t 2 ] zobrazení scény v čase t: f(t) = f(x,y,t) DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 11 / 24
Rozmazání pohybem Obecná pohybem rozmazaná scéna: f blurr t t 2 1 f t dt DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 12 / 24
Rozmazání pohybem Zobrazení scény s jediným pohybujícím se objektem: t 2 1 f t s t dt f blurr t 1 t t 2 1 s t 1 dt s t na t, t 0 1 2 DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 13 / 24
Hloubka ostrosti objektivu objektiv rovina zobrazení (film) rovina zaostření DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 14 / 24
Geometrické zjednodušení p,q objektiv x,y V xy poloměr r T xy rovina zobrazení (obrazovka) rovina zaostření DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 15 / 24
Výpočet hloubky ostrosti Model dírkové kamery:, f x y I V xy V T x, y, 0 xy xy V T p, q, 0 pq xy Model plošného objektivu:, pq kruh kolem x, y f x y I V dp dq DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 16 / 24
Ukázky hloubky ostrosti DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 17 / 24
Rozklad světla bílé světlo (všechny vlnové délky) oddělené vlnové délky obrazová funkce: f() = f(x,y,) DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 18 / 24
Výpočet rozkladu světla Barva pixelu při distribuci ve spektru:,,, R x y f x y R d spektrum,,, G x y f x y G d spektrum trichromatické spektrální činitele,,, B x y f x y B d spektrum DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 19 / 24
Ukázka rozkladu světla DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 20 / 24
Implementace integrály se odhadují stochasticky (metodami Monte-Carlo) spočítá se konečný počet vzorků (paprsků) integrál se odhadne sumou vážená integrální střední hodnota použije se uniformní vzorkování a příslušná váhová funkce konstrukce neuniformního vzorkování (sekvenční Poissonovo diskové vzorkování) DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 21 / 24
Kombinované metody libovolné metody lze vzájemně kombinovat i s vyhlazováním ( anti-aliasing ) vznikají integrály vyšších řádů - např. dimenze 10: vyhlazování (2), hloubka ostrosti (2), neostrý odraz (2), měkký stín (2), rozmazání pohybem (1), rozklad světla (1) výběr vzorkovací metody: stochastické vzorkování ( roztřesení,..) ve vyšších dimenzích pracuje efektivně nezávislé roztřesení ( N věží ) - skryté vzorkování adaptivní vzorkování DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 22 / 24
Skryté vzorkování je dán jen počet vzorků (primárních paprsků) na pixel každá vnitřní komponenta může vzorkovat sama libovolný počet přidaných dimenzí vzorkování 1 [x,y] [g,d] glossy [a,b] shadow náhodná permutace jittering...... N...... DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 23 / 24
Literatura A. Glassner: An Introduction to Ray Tracing, Academic Press, London 1989, 171-199 A. Watt, M. Watt: Advanced Animation and Rendering Techniques, Addison-Wesley, Wokingham 1992, 262-265 DistribRT 2015 Josef Pelikán, http://cgg.mff.cuni.cz/~pepca 24 / 24