SlideShare a Scribd company logo
PATH TRACING
(BLACK) PHOTONS & STUFF
Dragan Okanovic
@abstractalgo
ŠTA JE SVETLO?
• Elektromagnetna radijacija
• 380nm – 760nm (ultravioletna - infracrvena)
• Oko ima receptore koji reaguju na ove talasne duzine
• U mozgu dolazi do percepcije svetla i boja
• Dualna priroda svetla -> fotoni
• Foton – nosilac energije EM radijacije
• Svetlo nastaje dovodjenjem energije na atom, kada stanje postane nestabilno, emituje energiju i tako se
vraća u stabilnije stanje (stanje manje energije)
• Emitovana energija je u obliku fotona
• Primer: lampe, usijan (topljen) metal
PATH TRACING
• Jedan tip algoritama za renderovanje
• Path tracing != ray tracing (nije skroz isto, RT je subset PT)
• Tipično se koristi jedan od dva algoritma: rasterizacija ili path tracing
• Može i neki hibridni metod, koji na neki način kombinuje ova dva (REYES)
• Rasterizacija: za date objekte proceniti osvetljenje na njihovoj površini u zavisnosti od postavljenih svetala
• Ideja PT algoritma je dosta stara i bazična:
• Pratiti put fotona (svetla) kako se kreće kroz scenu i kako interaguje sa materijalima
foreach light in scene
{
foreach photon emitted from light
{
while not eyeHit( photon )
{
trace( photon, scene )
}
}
}
• Forward ray trace
• Kreni od svetla, stani kad foton stigne do oka
• Problem sa malim brojem uspešno ispraćenih fotona, malo
fotona stigne do kamere/oka, potreban je drugi pristup
• Backward tracing
• Kreni od oka, stani kada foton stigne do svetla
• Većina raytracing renderera koristi backwards metod (mada
ima I hibridnih rešenja, koja su zapravo najčešća)
RASTERIZATION RAY TRACING
foreach object in scene
{
foreach pixel on object
{
shade(pixel, object);
}
}
foreach pixel on screen
{
foreach object in scene
{
shade(pixel, object);
}
}
shade(pixel, object)
{
// get material properties of object (color, roughness, reflection ratio etc.)
material = object.material;
// get shading information @ pixel (surface normal, distance from lights etc.)
geometry = calc(pixel, object);
return shade(material, geometry);
}
• Odakle krenuti?
• Virtuelna kamera
• Ekran
• 2D polje piksela
• Scena (sfera)
• Konstruisati zrake iz kamere kroz centre piksela
• Pratiti zrak dok ne stigne do svetla
• Proračunati boju
• Proračunati novi pravac
• Apsorbovanje
• Refleksija
• Refrakcija
• Akumulirati rezultate
• Imamo zrak (putanju fotona), ali kako znamo gde i sa čime se foton sudara?
• Problem nalaženja preseka linije i proizvoljnog oblika objekta iz scene
• Matematički opisati inicijalnu putanju fotona i objekte u sceni
• Putanja -> vektor pravca + tačka iz koje je potekao
• Objekat -> razložiti ga na neke primitivne elemente (sfere, kvadri, trouglovi...)
• Najčešće se koriste trouglovi
• Nalaženje preseka odredjene primitive u prostoru i datog vektora se može lako računati
WHITTED RAYTRACER
• Turner Whitted (1979) predložio nove ideje
• Kada zrak udari površ, može da stvori tri zraka:
refleksije, refrakcije, zrak senke
• Tri tipa površi: difuzne (mat), spekularne
(reflektujuće) i refraktivne (dielektrici)
• Mane:
• aliasing
• hard shadows
• nema GI
• malo tipova materijala
Šta želimo:
• GI (color bleed)
• glossy surfaces
• caustics (indirect caustics)
• soft shadows (“AO”)
• AA
• lens effects (DOF, bokeh)
• motion blur
RENDERING EQUATION [KAJIYA 1986]
Svetlo iz tačke na površi u odredjenom smeru u zavisnosti od
emitujućeg svetla i
upadnog svetla akumuliranog preko cele hemisfere nad tačkom
Lo – light out
Le – light emitted
fr – BRDF
Li – light incoming
BRDF
• Bidirectional reflectance distribution function
• Vraća odnos izmedju količine svetla iz upadnog pravca i količine svetla na izlaznom pravcu
• Opisuje materijal (njegovo ponašanje pod različitim uslovima)
TIPOVI MATERIJALA
• Difuzni (mat)
• Odbijanje svetla podjednako verovatno u svim
pravcima
• Glossy (mutne, do umereno sjajne)
• Odbijanje svetla uglavnom oko spekularnog
pravca
• Spekularne (veoma sjajne, reflektujuće)
• Savršeno odbijeno svetlo
Nismo računali:
• Refrakciju
• Apsorpciju
• Transmisiju
MONTE CARLO INTEGRACIJA
• U opštem slučaju treba da integralimo (akumuliramo) dolazeće svetlo iz svih pravaca nad hemisferom
• Tehnički to ne možemo izvesti
• Integral treba aproksimirati
• Monte Carlo aproksimacija (stohazička)
• MC je metod numeričke integracija korišćenjem
slučajnih brojeva
• Bazira se na pravilu velikih brojeva
MCI & GI
• Mi pokušavamo da integralimo celu hemisferu
• Tehnički ne možemo to uraditi, te radimo aproksimaciju dovoljnim brojem sample-ova
• Posmatramo svaku tačku kao da je izvor svetla i ima uticaj na svaku drugu tačku
• Globalna iluminacija
• Svaka tačka se zbog svetla koje izlazi/se odbija sa nje se može posmatrati kao izvor svetla
• Sve osvetljava sve ostalo, pa čak i samo sebe osvetljava indirektno
GI
TIPOVI MATERIJALA
• Kako modelovati različite tipove materijala kod PT?
• Iznenadjujuće jednostavno!
• Poslati više zraka tako da aproksimiramo celu hemisferu i
onda proceniti rezultate
• Dfiuzne – poslati zraka
• Glossy – poslati nekoliko zraka i uzeti srednju vrednost
• Spekularne – poslati samo jedan, reflektovan zrak
• Refrakcija – poslati samo jedan, refraktovan zrak
Monte Carlo problemi:
• Rešava problem, ali je rezultat veoma zavisan od broja sample-ova i distribucije istih
• Često se ne dodje do svetla pa rezultat bude jako loš jer kontribucija GI bez nalaženja svetla na kraju
path-a je jako mala ili nepostojeća
• Delimična rešenja: importance sampling, stratified sampling, BDPT, MLT, photon mapping
MLT I BDPT
• Metropolis Light Transport (MLT):
iskoristiti putanje koje dovode do svetla,
sto cesce mozemo
• Bidirectional Path Tracing (BDPT):
raditi PT od oka; raditi PT od svetla; spojiti
ta dva
PHOTON MAPPING
• Poslati fotone od svetla
• Ispratiti gde završe i kakve su ima
krajnje osobine (noja)
• Rasporediti ih u spatijalnu strukturu
radi bržeg pristupa tokom čitanja
• Tokom računanja GI, uzeti lokalne
fotone i izračunati njihov doprinos
• Veoma spora tehnika, zahteva veliki
broj fotona i velike strukture
• Veoma, veoma retko u online impl.
• Računa na to da je GI sporopromenljiva funkcija
• PM je odličan za kaustiku
ACCELERATION STRUCTURES
• Računanje preseka zraka i primitive je skupo
• 90% vremena odlazi na računanje preseka
• Ogromna verovatnoća da će zrak promašiti primitivu i onda je svo računanje uzaludno
• Treba minimizovati broj testiranja preseka -> acc structures
• BVH, K-d tree, Octree
BOUNDING VOLUME HIERARCHY (BVH)
• Struktura stable
• Svaki roditelj predstavlja BV za svu njegovu decu
• Jedan čvor u stablu može minimalno obuhvatati jednu primitivu
K-D TREE
• K-dimensional tree
• Podela prostora na grupe, čineći (binarno)
stablo
OCTREE
• Struktura stabla gde svaki roditelj ima tačno osmoro dece
PT - PREDNOSTI
• Laka, jednostavna, brza implementacija (smallpt)
• PBR (physically based rendering) – fizički tačne kalkulacije
• Svi mogući tipovi materijala: difuzni, refraktivni, reflektivni, mutni (glossy), providni/apsorbujući (SSS)
• Globalna iluminacija (indirektna iluminacija)
• Visoko parelelan problem – moguće GPGPU/distributed implementacije
• Moze da bude veoma robustan kod
PT - MANE
• Jako, jako skupo računanje, te se uglavnom koristi za offline renderovanje
• Avatar: jedan mesec, 8GB/s, na 40k jezgara, 104 PB RAM (jedan frame na svakih nekoliko sati)
• Problem sa noise-om, potrebno je puno sample-ova za lep i noise-free rezultat
• Za lepu GI je potrebno puno sample-ova
• Trenutni GPU hw nije konstruisan za PT već za rasterizaciju, što otežava prelazak rendering engina na PT
algoritme
KEY TAKEAWAYS
• PT je PBR algoritam, veoma lak za implementaciju, veoma spor
• Napredniji od rasterizacije
• Funkcioniše po principu nalaženja preseka zraka iz kamere i scene, i računanja osvetljenja (boje)
• GI se aproksimira Monte Carlo metodom
• BRDF opisuje materijal i koristi se pri računanju iluminacije
BONUS
IMPLICITNE POVRSI
• Implicitne površi/figure su definisane jednačinom oblika f(x,y,z) = 0
• Za zadati zrak se ne može odrediti tačan presek, eksplicitno
• Ali, za zadatu tačku u prostoru se može odrediti da li pripada objektu ili ne
• Umesto eksplicitnog računanja preseka zraka i objekta, mi dakle imamo potrebu da ispitamo da li se
neka tačka nalazi ili ne unutar objekta
• Dva načina:
• Ići uvek konstantu udaljenost od početka zraka i ispitivati tačke
• Ići nekonstantnim koracima po zraku i ispitivati tačke (binarna pretraga ili sferično)
Constant step Sphere tracing (distance fields)
DISTANCE FIELD
DISTANCE FIELDS
• Omogućavaju path tracing
• Veoma, veoma jeftin AO
• Veoma jeftine senke
• Prilično lake transformacije objekata (translacija, rotacija, torzija)
• Koriste se dosta u demosceni, ShaderToy primerima
http://www.iquilezles.org/www/articles/raymarchingdf/raymarchingdf.htm
LENS EFFECTS: DOF (+BOKEH)
• DOF (depth-of-field) je efekat koji se javlja zbog
nefokusiranosti sočiva
• Ispoljava se kao zamućenje
• Jako se lako simulira u PT rendererima, tako što se zrak
kroz piksel ne formira samo tačno kroz centar piksela
već se razbaca po prostoru koji je veličine DOF efekta
za taj piksel
BOKEH
• Oblik DOF zavisi od oblika kroz koji ulazi svetlost
• Oblici su uglavnom kružni, heksagonalni ili oktagonalni
MOTION BLUR
• Kada uslikamo sliku, aparat prikuplja neko vreme
osvetljenje, za to vreme je moguće da se neki od
objekata u sceni pomere
• Ti objekti će efektivno slati fotone sa različite pozicije u
sceni, time praktično mutiti sliku -> zamućenje zbog
pomeranja (motion blur)
• Ovaj efekat uglavnom nepoželjan u fotografiji ipak
predstavlja veoma bitan deo naše percepcije prostora i
objekata u njemu
MOTION BLUR
• U PT rendererima se lako realizuje tako što
se zraci kroz piksel razbacaju duž vektora
kretanja objekta

More Related Content

Viewers also liked

William G McBride Construction Resume
William G McBride Construction ResumeWilliam G McBride Construction Resume
William G McBride Construction Resume
William Mcbride
 
Manual passeduc2
Manual passeduc2Manual passeduc2
Manual passeduc2
Angelo Barbosa
 
Informe para segundo debate ley drogas Ecuador
Informe para segundo debate ley drogas EcuadorInforme para segundo debate ley drogas Ecuador
Informe para segundo debate ley drogas Ecuador
Marioneto Estalagmita
 
ECOSOC HAS: 17 - 19 Jun 2015
ECOSOC HAS: 17 - 19 Jun 2015ECOSOC HAS: 17 - 19 Jun 2015
ECOSOC HAS: 17 - 19 Jun 2015
OCHA VIU
 
Ciro Alegría Bazán
Ciro Alegría BazánCiro Alegría Bazán
Ciro Alegría Bazán
Mdc5
 
Redaccion tecnica
Redaccion tecnicaRedaccion tecnica
PARAFRASEANDO VERSOS DEL MIO ÇID
PARAFRASEANDO VERSOS DEL MIO ÇIDPARAFRASEANDO VERSOS DEL MIO ÇID
PARAFRASEANDO VERSOS DEL MIO ÇID
Begoruano
 
JUGANDO CON JULIO CORTÁZAR
JUGANDO CON JULIO CORTÁZARJUGANDO CON JULIO CORTÁZAR
JUGANDO CON JULIO CORTÁZAR
Begoruano
 
Spain´s political system
Spain´s political systemSpain´s political system
Spain´s political system
lola caravaca
 
I4emploi comment l utiliser
I4emploi comment l utiliserI4emploi comment l utiliser
I4emploi comment l utiliser
Alban Jarry
 

Viewers also liked (10)

William G McBride Construction Resume
William G McBride Construction ResumeWilliam G McBride Construction Resume
William G McBride Construction Resume
 
Manual passeduc2
Manual passeduc2Manual passeduc2
Manual passeduc2
 
Informe para segundo debate ley drogas Ecuador
Informe para segundo debate ley drogas EcuadorInforme para segundo debate ley drogas Ecuador
Informe para segundo debate ley drogas Ecuador
 
ECOSOC HAS: 17 - 19 Jun 2015
ECOSOC HAS: 17 - 19 Jun 2015ECOSOC HAS: 17 - 19 Jun 2015
ECOSOC HAS: 17 - 19 Jun 2015
 
Ciro Alegría Bazán
Ciro Alegría BazánCiro Alegría Bazán
Ciro Alegría Bazán
 
Redaccion tecnica
Redaccion tecnicaRedaccion tecnica
Redaccion tecnica
 
PARAFRASEANDO VERSOS DEL MIO ÇID
PARAFRASEANDO VERSOS DEL MIO ÇIDPARAFRASEANDO VERSOS DEL MIO ÇID
PARAFRASEANDO VERSOS DEL MIO ÇID
 
JUGANDO CON JULIO CORTÁZAR
JUGANDO CON JULIO CORTÁZARJUGANDO CON JULIO CORTÁZAR
JUGANDO CON JULIO CORTÁZAR
 
Spain´s political system
Spain´s political systemSpain´s political system
Spain´s political system
 
I4emploi comment l utiliser
I4emploi comment l utiliserI4emploi comment l utiliser
I4emploi comment l utiliser
 

Pathtracing

  • 1. PATH TRACING (BLACK) PHOTONS & STUFF Dragan Okanovic @abstractalgo
  • 2. ŠTA JE SVETLO? • Elektromagnetna radijacija • 380nm – 760nm (ultravioletna - infracrvena) • Oko ima receptore koji reaguju na ove talasne duzine • U mozgu dolazi do percepcije svetla i boja • Dualna priroda svetla -> fotoni • Foton – nosilac energije EM radijacije • Svetlo nastaje dovodjenjem energije na atom, kada stanje postane nestabilno, emituje energiju i tako se vraća u stabilnije stanje (stanje manje energije) • Emitovana energija je u obliku fotona • Primer: lampe, usijan (topljen) metal
  • 3. PATH TRACING • Jedan tip algoritama za renderovanje • Path tracing != ray tracing (nije skroz isto, RT je subset PT) • Tipično se koristi jedan od dva algoritma: rasterizacija ili path tracing • Može i neki hibridni metod, koji na neki način kombinuje ova dva (REYES) • Rasterizacija: za date objekte proceniti osvetljenje na njihovoj površini u zavisnosti od postavljenih svetala • Ideja PT algoritma je dosta stara i bazična: • Pratiti put fotona (svetla) kako se kreće kroz scenu i kako interaguje sa materijalima
  • 4. foreach light in scene { foreach photon emitted from light { while not eyeHit( photon ) { trace( photon, scene ) } } } • Forward ray trace • Kreni od svetla, stani kad foton stigne do oka • Problem sa malim brojem uspešno ispraćenih fotona, malo fotona stigne do kamere/oka, potreban je drugi pristup • Backward tracing • Kreni od oka, stani kada foton stigne do svetla • Većina raytracing renderera koristi backwards metod (mada ima I hibridnih rešenja, koja su zapravo najčešća)
  • 5. RASTERIZATION RAY TRACING foreach object in scene { foreach pixel on object { shade(pixel, object); } } foreach pixel on screen { foreach object in scene { shade(pixel, object); } } shade(pixel, object) { // get material properties of object (color, roughness, reflection ratio etc.) material = object.material; // get shading information @ pixel (surface normal, distance from lights etc.) geometry = calc(pixel, object); return shade(material, geometry); }
  • 6. • Odakle krenuti? • Virtuelna kamera • Ekran • 2D polje piksela • Scena (sfera) • Konstruisati zrake iz kamere kroz centre piksela • Pratiti zrak dok ne stigne do svetla • Proračunati boju • Proračunati novi pravac • Apsorbovanje • Refleksija • Refrakcija • Akumulirati rezultate
  • 7. • Imamo zrak (putanju fotona), ali kako znamo gde i sa čime se foton sudara? • Problem nalaženja preseka linije i proizvoljnog oblika objekta iz scene • Matematički opisati inicijalnu putanju fotona i objekte u sceni • Putanja -> vektor pravca + tačka iz koje je potekao • Objekat -> razložiti ga na neke primitivne elemente (sfere, kvadri, trouglovi...) • Najčešće se koriste trouglovi • Nalaženje preseka odredjene primitive u prostoru i datog vektora se može lako računati
  • 8.
  • 9. WHITTED RAYTRACER • Turner Whitted (1979) predložio nove ideje • Kada zrak udari površ, može da stvori tri zraka: refleksije, refrakcije, zrak senke • Tri tipa površi: difuzne (mat), spekularne (reflektujuće) i refraktivne (dielektrici) • Mane: • aliasing • hard shadows • nema GI • malo tipova materijala
  • 10. Šta želimo: • GI (color bleed) • glossy surfaces • caustics (indirect caustics) • soft shadows (“AO”) • AA • lens effects (DOF, bokeh) • motion blur
  • 11. RENDERING EQUATION [KAJIYA 1986] Svetlo iz tačke na površi u odredjenom smeru u zavisnosti od emitujućeg svetla i upadnog svetla akumuliranog preko cele hemisfere nad tačkom Lo – light out Le – light emitted fr – BRDF Li – light incoming
  • 12. BRDF • Bidirectional reflectance distribution function • Vraća odnos izmedju količine svetla iz upadnog pravca i količine svetla na izlaznom pravcu • Opisuje materijal (njegovo ponašanje pod različitim uslovima)
  • 13. TIPOVI MATERIJALA • Difuzni (mat) • Odbijanje svetla podjednako verovatno u svim pravcima • Glossy (mutne, do umereno sjajne) • Odbijanje svetla uglavnom oko spekularnog pravca • Spekularne (veoma sjajne, reflektujuće) • Savršeno odbijeno svetlo Nismo računali: • Refrakciju • Apsorpciju • Transmisiju
  • 14. MONTE CARLO INTEGRACIJA • U opštem slučaju treba da integralimo (akumuliramo) dolazeće svetlo iz svih pravaca nad hemisferom • Tehnički to ne možemo izvesti • Integral treba aproksimirati • Monte Carlo aproksimacija (stohazička) • MC je metod numeričke integracija korišćenjem slučajnih brojeva • Bazira se na pravilu velikih brojeva
  • 15. MCI & GI • Mi pokušavamo da integralimo celu hemisferu • Tehnički ne možemo to uraditi, te radimo aproksimaciju dovoljnim brojem sample-ova • Posmatramo svaku tačku kao da je izvor svetla i ima uticaj na svaku drugu tačku • Globalna iluminacija • Svaka tačka se zbog svetla koje izlazi/se odbija sa nje se može posmatrati kao izvor svetla • Sve osvetljava sve ostalo, pa čak i samo sebe osvetljava indirektno
  • 16. GI
  • 17. TIPOVI MATERIJALA • Kako modelovati različite tipove materijala kod PT? • Iznenadjujuće jednostavno! • Poslati više zraka tako da aproksimiramo celu hemisferu i onda proceniti rezultate • Dfiuzne – poslati zraka • Glossy – poslati nekoliko zraka i uzeti srednju vrednost • Spekularne – poslati samo jedan, reflektovan zrak • Refrakcija – poslati samo jedan, refraktovan zrak
  • 18. Monte Carlo problemi: • Rešava problem, ali je rezultat veoma zavisan od broja sample-ova i distribucije istih • Često se ne dodje do svetla pa rezultat bude jako loš jer kontribucija GI bez nalaženja svetla na kraju path-a je jako mala ili nepostojeća • Delimična rešenja: importance sampling, stratified sampling, BDPT, MLT, photon mapping
  • 19. MLT I BDPT • Metropolis Light Transport (MLT): iskoristiti putanje koje dovode do svetla, sto cesce mozemo • Bidirectional Path Tracing (BDPT): raditi PT od oka; raditi PT od svetla; spojiti ta dva
  • 20. PHOTON MAPPING • Poslati fotone od svetla • Ispratiti gde završe i kakve su ima krajnje osobine (noja) • Rasporediti ih u spatijalnu strukturu radi bržeg pristupa tokom čitanja • Tokom računanja GI, uzeti lokalne fotone i izračunati njihov doprinos • Veoma spora tehnika, zahteva veliki broj fotona i velike strukture • Veoma, veoma retko u online impl.
  • 21. • Računa na to da je GI sporopromenljiva funkcija • PM je odličan za kaustiku
  • 22. ACCELERATION STRUCTURES • Računanje preseka zraka i primitive je skupo • 90% vremena odlazi na računanje preseka • Ogromna verovatnoća da će zrak promašiti primitivu i onda je svo računanje uzaludno • Treba minimizovati broj testiranja preseka -> acc structures • BVH, K-d tree, Octree
  • 23. BOUNDING VOLUME HIERARCHY (BVH) • Struktura stable • Svaki roditelj predstavlja BV za svu njegovu decu • Jedan čvor u stablu može minimalno obuhvatati jednu primitivu
  • 24. K-D TREE • K-dimensional tree • Podela prostora na grupe, čineći (binarno) stablo
  • 25. OCTREE • Struktura stabla gde svaki roditelj ima tačno osmoro dece
  • 26. PT - PREDNOSTI • Laka, jednostavna, brza implementacija (smallpt) • PBR (physically based rendering) – fizički tačne kalkulacije • Svi mogući tipovi materijala: difuzni, refraktivni, reflektivni, mutni (glossy), providni/apsorbujući (SSS) • Globalna iluminacija (indirektna iluminacija) • Visoko parelelan problem – moguće GPGPU/distributed implementacije • Moze da bude veoma robustan kod
  • 27. PT - MANE • Jako, jako skupo računanje, te se uglavnom koristi za offline renderovanje • Avatar: jedan mesec, 8GB/s, na 40k jezgara, 104 PB RAM (jedan frame na svakih nekoliko sati) • Problem sa noise-om, potrebno je puno sample-ova za lep i noise-free rezultat • Za lepu GI je potrebno puno sample-ova • Trenutni GPU hw nije konstruisan za PT već za rasterizaciju, što otežava prelazak rendering engina na PT algoritme
  • 28. KEY TAKEAWAYS • PT je PBR algoritam, veoma lak za implementaciju, veoma spor • Napredniji od rasterizacije • Funkcioniše po principu nalaženja preseka zraka iz kamere i scene, i računanja osvetljenja (boje) • GI se aproksimira Monte Carlo metodom • BRDF opisuje materijal i koristi se pri računanju iluminacije
  • 29. BONUS
  • 30. IMPLICITNE POVRSI • Implicitne površi/figure su definisane jednačinom oblika f(x,y,z) = 0 • Za zadati zrak se ne može odrediti tačan presek, eksplicitno • Ali, za zadatu tačku u prostoru se može odrediti da li pripada objektu ili ne • Umesto eksplicitnog računanja preseka zraka i objekta, mi dakle imamo potrebu da ispitamo da li se neka tačka nalazi ili ne unutar objekta • Dva načina: • Ići uvek konstantu udaljenost od početka zraka i ispitivati tačke • Ići nekonstantnim koracima po zraku i ispitivati tačke (binarna pretraga ili sferično)
  • 31. Constant step Sphere tracing (distance fields)
  • 33. DISTANCE FIELDS • Omogućavaju path tracing • Veoma, veoma jeftin AO • Veoma jeftine senke • Prilično lake transformacije objekata (translacija, rotacija, torzija) • Koriste se dosta u demosceni, ShaderToy primerima http://www.iquilezles.org/www/articles/raymarchingdf/raymarchingdf.htm
  • 34.
  • 35. LENS EFFECTS: DOF (+BOKEH) • DOF (depth-of-field) je efekat koji se javlja zbog nefokusiranosti sočiva • Ispoljava se kao zamućenje • Jako se lako simulira u PT rendererima, tako što se zrak kroz piksel ne formira samo tačno kroz centar piksela već se razbaca po prostoru koji je veličine DOF efekta za taj piksel
  • 36. BOKEH • Oblik DOF zavisi od oblika kroz koji ulazi svetlost • Oblici su uglavnom kružni, heksagonalni ili oktagonalni
  • 37. MOTION BLUR • Kada uslikamo sliku, aparat prikuplja neko vreme osvetljenje, za to vreme je moguće da se neki od objekata u sceni pomere • Ti objekti će efektivno slati fotone sa različite pozicije u sceni, time praktično mutiti sliku -> zamućenje zbog pomeranja (motion blur) • Ovaj efekat uglavnom nepoželjan u fotografiji ipak predstavlja veoma bitan deo naše percepcije prostora i objekata u njemu
  • 38. MOTION BLUR • U PT rendererima se lako realizuje tako što se zraci kroz piksel razbacaju duž vektora kretanja objekta

Editor's Notes

  1. O cemu cu pricati, odakle ideja, cemu je zamena, prednosti i mane. Zasto sam izabrao temu -> diplomski Cilj je da izadjete sa predavanja i imate konceptualno razumevanje PT i da mozete da se upustite u diskusiju ako vam neko spomene tu temu.
  2. U grafici se bavimo sintezom slika, ali st aje svetlo uopste? EM -> interaguje sa cepicima na retini. Dualna priroda -> fotoni. Foton mozemo logicki modelovati kroz kroz kod. Primeri stvaranja svetla u npr lampama.
  3. Whitted raytracer: prati se zrak kroz piksel Zrak se moe apsorbovati, reflektovati ili prelomiti. Uvek se testira zaklonjenje.
  4. GI – sve osvetljava sve Glossy – nisu povrsi samo savrseno reflektujuce, refraktivne ili difuzne, I u stvari, vecina je nesto izmedju Soft shadows – senke u prirodi su ovek soft AA – zelimo aa iz logicnih razloga Lens effects – simulacija efekata sa kamerom je bitna za dozivljaj I percepciju realizma I pozicija objekata (dof, bokeh, motion blur) Najvise nas interesuje GI !!!!
  5. Sta je boja objekta, kako se racuna, sta predstavlja? -> rendering equation Zavisno od talasne duzine, materijala objekta, upadnog svetla I uglova ulaza I izlaza
  6. Objasniti naziv: - bidirectional – ili je distribucija na izlazu za zadati ulaz ili izlaz za zadate ulaze - reflectance – odnos ulaznog I izlaznog svetla - distribution – funkcija odnosa koeficijanata odnosa Pre sve odnos refleksije apsorpcije/refleksije. Difuzno – apsorbuje Reflektivno – refleksija BRDF zavisi od talasne duzine, ali mi uglavnom modelujemo BRDF za RGB komponente boje.
  7. Uzimanje odbiraka I racunanje integrala aproksimacijom odnosa odbiraka unutar f-je I van nje. Sto vise odbiraka -> preciznije.
  8. BRDF – bidirectional deo -> na osnovu njega se modeluju ovakvi materijali
  9. Ako znamo da nam vise svetla dolazi iz nekog pravca, vise cemo zraka slati u tom pravcu. Ako znamo da nam je veci uticaj svetla iz nekog pravca, onda cemo vise vrednovati taj pravac od ostalih.