Pčítačvá grafka III Zbrazvací rvnc a jjí řšní: Path tracng Jarslav Křvánk MFF UK Jarslav.Krvank@mff.cun.cz
Rvnc drazu Sčtní ntgrál příspěvků d r přs clu hmsféru: r d cs H f r d n r r clkvá dchzí rad. mtvaná rad. dražná rad. 2 PG III NPGR010 - J. Křvánk 2012
Od lkálníh drazu k glbálnímu šířní světla Rvnc drazu lkální draz Odkud přchází radanc? Z statních míst v scéně!!! r r - d cs H f r = r Funkc vržní paprsku ra castng functn 3 PG III NPGR010 - J. Křvánk 2012
Od lkálníh drazu k glbálnímu šířní světla Dsazní za d rvnc drazu Příchzí radanc vlučna. Odchzí radanc ppsána jak funkc jnd v scéně. d cs r H f r 4 PG III NPGR010 - J. Křvánk 2012
Zbrazvací rvnc Rndrng quatn Odstranění ndu u dchzí radanc: Pps ustálnéh stavu = nrgtcké rvnváh v scéně. Rndrng = výpčt pr místa vdtlná přs pl. d cs r H f r 5 PG III NPGR010 - J. Křvánk 2012
Rvnc drazu rflctn quatn ppsuj lkální draz světla v jdnm místě Intgrál pmcí něhž lz spčítat dchzí radanc z příchzí radanc v daném bdě Zbrazvací rvnc rndrng quatn Pdmínka na glbální rzlžní světla v scéně Intgrální rvnc nznámá vlv vprav Rvnc drazu vs. zbrazvací rvnc d cs r H f r d cs H f r Pdbný tvar jný význam 6
Rndrng Equatn Kaja 1986 PG III NPGR010 - J. Křvánk 2012 7
Kmpltní frmulac prblému Dán Cíl M plcha gmtr scén r funkc vržní paprsku V funkc vdtlnst mtvaná radanc zdrj světla f r BRDF matrál pvrchů Vpčítat hdntu radanc v ustálném stavu pr mnžnu bdů 1 2 n na M s příslušným směr 1 2 n Abstraktní matmatcký prblém Nní už žádná fzka jn matmatka a algrtm PG III NPGR010 - J. Křvánk 2012 8
Směrvá a plšná frma ZR
Zbrazvací rvnc směr vs plch Úhlvá frma: ntgrál přs směr Substtuc: 2 cs d d r A d cs r H f r 10 PG III NPGR010 - J. Křvánk 2012
Zbrazvací rvnc úhl vs plch Plšná frma: ntgrál přs plch scén M r A V G f d 2 cs cs G vdtlnst 1 vdtlné z 0 jnak gmtrcký čln pvrch scén 11 PG III NPGR010 - J. Křvánk 2012
Intgrál přs směr Sčítání příspěvků světla d bdu z všch směrů Pr každý směr najdu njblžší plchu Implmntac v stchastckém sldvání paprsku: Pr dané míst gnruj náhdné směr pr každý najd njblžší průsčík v něm spčítj dchzí radanc. vš sčt přs všchn vgnrvané náhdné směr. pcké pužtí: výpčt npříméh světlní v bdě PG III NPGR010 - J. Křvánk 2012 12
Intgrál přs plch Sčítání příspěvků světla d bdu z plch scén Příspěvk zapčítán puz pkud j plcha vdtlná Implmntac v stchastckém sldvání paprsku: Gnruj náhdně místa na gmtr. Pr každé tstuj vdtlnst mz a. Pkud vdtlné přčt k světlní v dchzí radanc z vážnu gmtrckým faktrm. pcké pužtí: výpčt příméh světlní v bdě plšné zdrj světla PG III NPGR010 - J. Křvánk 2012 13
Způsb řšní zbrazvací rvnc kální světlní OpnG výpčt ntgrálu drazu pr bdvé zdrj světla bdvé zdrj: ntgrál -> suma Npsktuj ustálnu radanc nní řšním ZR Mtda knčných prvků radační mtda radzta [Gral 84] dskrtzac plch scén knčné prvk zandbává směrvst drazu nzbrazuj lsklé draz světla PG III NPGR010 - J. Křvánk 2012 14
Způsb řšní ZR Sldvání paprsku ra tracng [Whttd 80] puz přímé světlní na lsklých a dfúzní plchách a npřímé světlní puz na dálně zrcadlvých plchách draz lm npsthuj npřímé světlní na dfúzních a lsklých plchách měkké stín Dstrbuvané sldvání paprsku [Ck 84] dhad lkálníh ntgrálu mtdu Mnt Carl pčítá měkké draz stín hlubku strst.. PG III NPGR010 - J. Křvánk 2012 15
Způsb řšní ZR Sldvání cst Path tracng [Kaja 86] řšní zbrazvací rvnc mtdu Mnt Carl výpčt náhdné cst náhdné prcházk psthuj npřímé světlní všších řádů PG III NPGR010 - J. Křvánk 2012 16
Od zbrazvací rvnc k radační mtdě
Od zbrazvací rvnc k radztě Frmulac ZR pmcí ntgrálu přs plch: Radzta přdpklad Puz dfúzní plch BRDF knstantní v a Elmnt plch mají knstantní radztu M r A V G f d 18 PG III NPGR010 - J. Křvánk 2012
Od zbrazvací rvnc k radztě Puz dfúzní plch BRDF knstantní v a Odchzí radanc j nzávslá na a j rvna radztě B děln p M A V G d p M A V G B B B d p ' G 19 PG III NPGR010 - J. Křvánk 2012
Od zbrazvací rvnc k radztě Knstantní radzta B přspívajících plšných lmntů B N B B j G' da j j1 A j radzta j-téh lmtu gmtrcký faktr mz plšku j a bdm PG III NPGR010 - J. Křvánk 2012 20
Od zbrazvací rvnc k radztě Knstantní radzta lmntu přjímajícíh světl: Střdní hdnta průměr radzt přs plchu lmntu B 1 A A B da B N B j G' da j d j1 A A A 1 j A da A j da j A j F j knfgurační faktr frm factr PG III NPGR010 - J. Křvánk 2012 21
Klascká radztní rvnc Sustava lnárních rvnc B B N j1 B j F j Knfgurační faktr 1 F j G' da j da A A A j PG III NPGR010 - J. Křvánk 2012 22
Radační mtda Klascká radzta Výpčt knfguračních faktrů Mnt Carl hmcub Řšní radztní rvnc Gathrng Shtng Stchastcká radzta Obchází plctní výpčt knfguračních faktrů Mtda Mnt Carl Npraktcká npužívá s v pra Rzdělní na plšk -> ctlvst na kvaltu mdlu Vské paměťvé nárk Nárčná mplmntac PG III NPGR010 - J. Křvánk 2012 23
Vjádřní ZR pmcí ntgrálníh prátru
ZR j ntgrální rvnc Obcný tvar Frdhlmv ntgrální rvnc druhéh druhu f g k f d nznámá fc známé fc jádr rc Zbrazvací rvnc: H r f r cs d PG III NPGR010 - J. Křvánk 2012 25
nární prátr nární prátr půsbí na funkc jak matc na vktr h f Půsbní j lnární af bg a f b g Příklad lnárních prátrů K f k f d f D f PG III NPGR010 - J. Křvánk 2012 26
ransprtní prátr d cs H f r Zbrazvací rvnc 27 PG III NPGR010 - J. Křvánk 2012
Řšní ZR v prátrvém tvaru Zbrazvací rvnc Frmální řšní I 1 I v pra npužtlné nvrz nlz plctně vjádřt PG III NPGR010 - J. Křvánk 2012 28
Epanz zbrazvací rvnc Rkurzvní substtuc n-násbným pakváním vznkn Numannva řada PG III NPGR010 - J. Křvánk 2012 29 2 n n 1 0
Epanz zbrazvací rvnc Pkud j kntrakc tj. < 1 v ZR platí pak lm n 1 0 n Řšní zbrazvací rvnc j pak dán 0 PG III NPGR010 - J. Křvánk 2012 30
Jné dvzní Numannv řad Frmální řšní zbrazvací rvnc Platí Důkaz... 2 1 I I I I I I I I......... 3 2 2 2 1 1 I 31 PG III NPGR010 - J. Křvánk 2012
Pstupné aprmac Každá aplkac dpvídá jdnmu drazu & přnsu světla 2 3... ms z pvrchu zdrjů přímé světlní OpnG stínvání npřímé světlní prvníh řádu n-bunc ndrct PG III NPGR010 - J. Křvánk 2012 npřímé světlní druhéh řád tw-bunc ndrct 32
: Ustálná zář : Emtvaná zář : Oprátr přnsu & drazu světla Zbrazvací rvnc Kaja 1986 J. Křvánk Sntéza ralstckéh brazu: Algrtm a pužtlnst M r G f da
Řšní: Numannva řada Zbrazvací rvnc Kaja 1986... 3 2 J. Křvánk Sntéza ralstckéh brazu: Algrtm a pužtlnst
Pstupné aprmac 2 3... PG III NPGR010 - J. Křvánk 2012 35
Kntraktvta Platí pr fzkálně krktní mdl Vplývá z zachvání nrg Znamná ž pakvané aplkac prátru snžují nrg drazvst všch plch jsu < 1 Scén s vlm lsklým pvrch drazvst blízká 1 knvrgnc vžaduj smulvat větší mnžství drazů světla nž v dfúzních scénách PG III NPGR010 - J. Křvánk 2012 36
Čh jsm tím dsáhl? Nahradl jsm ntgrální rvnc řadu ntgrálů s pstupně rstucí dmnznaltu Numrck vhdncvat ntgrál umím mtda Mnt Carl -> umím řšt zbrazvací rvnc -> umím rndrvat brázk hurá! Rkurzvní aplkac dpvídá rkurzvnímu sldvání paprsku d kamr PG III NPGR010 - J. Křvánk 2012 37
C t td vlastně pčítám? PG III NPGR010 - J. Křvánk 2012 38 M r M r M r A A A A A V G f V G f A V G f ž z z z ž z z z z d d d... d d d
Cst vs. rkurz: Otázka ntrprtac Nzávslé cst v vskdmnználním prstru Rkurzvní řšní dvjných ntgrálů přs hmsféru: PG III NPGR010 - J. Křvánk 2011 39... 3 2...
Rkurzvní ntrprtac Úhlvá frmulac ZR Pr výpčt ptřbuj spčítat r pr všchn směr kl bdu. Pr výpčt každéh r ptřbuj spčítat r r pr všchn směr kl bdu r Atd => rkurz H r ' ' r r f r ' cs ' d' r PG III NPGR010 - J. Křvánk 2012 40
Path tracng v. 0 gt ω: = tracra ω rturn ω + r ω // mttd radanc // rflctd radanc r ω: ω = gnunfrmrandmdr n rturn p * brdf ω ω * raradancest ω PG III NPGR010 - J. Křvánk 2012 41
Path tracng v. 2012 2012 Clumba Pcturs Industrs Inc. All Rghts Rsrvd. PG III NPGR010 - J. Křvánk 2012 42
Závěr Ptřbujm nástrj pr numrcké ntgrvání Přs hmsféru Přs plch A přs Kartézské sučn přdchzíh Mnhdmnznální ntgrál Nástrj Mnt Carl mtd PG III NPGR010 - J. Křvánk 2012 43
Sldvání cst Path tracng Kaja86 Puz jdn skundární paprsk 1. Náhdný výběr ntrakc dální lm dfúzní draz 2. Imprtanc samplng pdl vbrané ntrakc Přímé světlní Dufj ž náhdně vgnrvaný paprsk trfí zdrj anb Vbr náhdně jdn vzrk na jdnm zdrj světla rasuj stvk cst přs každý pl a zprůměruj výsldk Výhda: žádná plz pčtu paprsků kvůl rkurz PG III NPGR010 - J. Křvánk 2012 44
Sldvání cst d kamr rndrimag { fr all pls { } Clr plcl = 000; fr k = 1 t N { wk := náhdný směr skrz k-tý pl plcl += gtcampswk } rturn / N } PG III NPGR010 - J. Křvánk 2012 45
Path racng Implctní světlní gt w { Clr thrput = 111 Clr accum = 000 whl1 { ht = NarstIntrsct w f n ntrsctn rturn accum + thrput * bgradanc w f songhtsurcht accum += thrput * ht.ps -w ρ = rflctancht.ps -w f rand < ρ // russan rultt survv rflct w := SamplDrht thrput *= frht.ps w -w * dtht.n w / ρ*pdfw := ht.ps w := w ls // absrb brak; } rturn accum; } PG III NPGR010 - J. Křvánk 2012 46
Uknční rkurz Ruská rulta Pkračuj v rkurz s pravděpdbnstí q Uprav váhu faktrm 1 / q Z Y / q pkud q 0 jnak E[ Y] 1 E[ Z] q 0 E[ Y] q q 1 PG III NPGR010 - J. Křvánk 2012 47
Výběr náhdnéh směru Imprtanc gt w Samplng { Clr thrput = 111 Clr accum = 000 whl1 { ht = NarstIntrsct w f n ntrsctn rturn accum + thrput * bgradanc w f songhtsurcht accum += thrput * ht.ps -w ρ = rflctancht.ps -w f rand < ρ // russan rultt survv rflct w := SamplDrht thrput *= frht.ps w -w * dtht.n w / ρ * pdfw := ht.ps w := w ls // absrb brak; } rturn accum; } PG III NPGR010 - J. Křvánk 2012 48
Výběr náhdnéh směru Imprtanc Samplng Občjně vzrkujm s husttu c njpdbnější sučnu f r cs Idálně bchm chtěl vzrkvat pdl f r cs al t numím prtž nznám C kdž bud hustta přsně úměrná f r cs? PG III NPGR010 - J. Křvánk 2012 49
Idální BRDF Imprtanc Samplng Nrmalzac ntgrál pdf musí být = 1 PG III NPGR010 - J. Křvánk 2012 50 d cs cs H r r f f cs r f p p drazvst
Idální BRDF IS v Path racru Obcná hustta pdf... thrput *= fr. * dt. / ρ * pw Idální BRDF mprtanc samplng p f r cs... thrput *= 1 PG III NPGR010 - J. Křvánk 2012 51
Pravděpdbnst přžtí cst gt w { Clr thrput = 111 Clr accum = 000 whl1 { ht = NarstIntrsct w f n ntrsctn rturn accum + thrput * bgradanc w f songhtsurcht accum += thrput * ht.ps -w ρ = rflctancht.ps -w f rand < ρ // russan rultt survv rflct w := SamplDrht thrput *= frht.ps w -w * dtht.n w / ρ * pw := ht.ps w := w ls // absrb brak; } rturn accum; } PG III NPGR010 - J. Křvánk 2012 52
Pravděpdbnst přžtí cst Pužtí drazvst jak p-nst přžtí dává smsl Pkud plcha dráží jn 30% nrg pkračujm puz s 30% pravděpdbnstí. C kdž numím spčítat? Altrnatva 1. Njdřív vgnruj náhdný směr pdl p 2. q survval mn 1 f r cs p Pr dální BRDF IS stjné jak půvdní mtda PG III NPGR010 - J. Křvánk 2012 53
Výpčt příméh světlní pmcí MIS v path tracru
Multpl Imprtanc Samplng Vach & Gubas 95 f p 1 p 2 0 1 PG III NPGR010 - J. Křvánk 2012 55
Vrvnaná hurstka Balanc hurst. Výsldný stmátr p dsazní vah příspěvk vzrku nzávsí na tm z ktré bl přízn tchnk tj. pdf PG III NPGR010 - J. Křvánk 2012 56
Pužtí MIS v path tracru Pr každý vrchl cst gnrvané z kamr: Gnrvání plctníh stínvéh paprsku pr tchnku p 2 vzrkvání plch zdrj Skundární paprsk pr tchnku p 1 vzrkvání zdrj Sdílný pr výpčt příméh npříméh světlní Puz na přímé světlní s aplkuj MIS váha npřímé světlní s přpčt clé Př výpčtu MIS vah j ptřba vzít v úvahu pravděpdbnst uknční cst ruská rulta PG III NPGR010 - J. Křvánk 2012 57
Víc zdrjů světla Mžnst 1: Stínvý paprsk pr náhdný bd na každém zdrj světla Mžnst 2 čast lpší: Náhdný výběr zdrj s p-nstí pdl výknu Stínvý paprsk k náhdně vbranému bdu na vbraném zdrj Pzr: Pravděpdbnst výběru zdrj vlvňuj hustt a td váh v MIS PG III NPGR010 - J. Křvánk 2012 58