mit eecs 6.837, cutler and durand 1 mit 6.837 - ray tracing
TRANSCRIPT
![Page 1: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/1.jpg)
MIT EECS 6.837, Cutler and Durand 1
MIT 6.837 - Ray Tracing
![Page 2: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/2.jpg)
MIT EECS 6.837, Cutler and Durand 2
Tony DeRose - Math in the MoviesTony DeRose: Pixar Animation Studios - Senior ScientistDate: 10-5-2004 (one week from today!)Time: 1:00 PM - 2:00 PMLocation: 32–D449 (Stata Center, Patil/Kiva)
Film making is undergoing a digital revolution brought on by advances in areas such as computer technology, computational physics and computer graphics. This talk will provide a behind the scenes look at how fully digital films --- such as Pixar's "Monster's Inc" and "Finding Nemo" --- are made, with particular emphasis on the role that mathematics plays in the revolution.
![Page 3: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/3.jpg)
MIT EECS 6.837, Cutler and Durand 3
Final Exam
• … has been scheduled
• Thursday December 16th, 1:30-3:30pm
• DuPont
• Open Book
![Page 4: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/4.jpg)
MIT EECS 6.837, Cutler and Durand 4
Last Week: Transformations• Linear, affine and
projective transforms
• Homogeneous coordinates
• Matrix notation
• Transformation composition is not commutative
![Page 5: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/5.jpg)
MIT EECS 6.837, Cutler and Durand 5
Last Week: Transformations
• Transformations in Ray Tracing– Transforming the ray
Remember: points & directionstransform differently!
– Normalizing direction &what to do with t
– Normal transformation
vWS
nWS
nWST = nOS (M-1)
![Page 6: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/6.jpg)
MIT EECS 6.837, Cutler and Durand 6
Last Time: Local Illumination• BRDF – Bidirectional Reflectance Distribution Function• Phong Model - Sum of 3 components:
– Diffuse Shading
– Specular Highlight
– Ambient Term
Surface
2
)()( )(
r
LkkkL iq
sdao rvln
![Page 7: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/7.jpg)
MIT EECS 6.837, Cutler and Durand 7
Phong Examples
• Shininess coefficient controls the “spread” of the specular highlight
Phong Blinn-Torrance (scaled to approximate Phong)
diffuse only q = 1
q = 128q = 64q = 32
q = 16q = 8q = 4
q = 2 diffuse only q = 1
q = 128q = 64q = 32
q = 16q = 8q = 4
q = 2
![Page 8: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/8.jpg)
MIT EECS 6.837, Cutler and Durand 8
The Phong Model• Parameters
– ks: specular reflection coefficient
– q : specular reflection exponent
Surface
l
nr
Camera
v
2
)(
r
LkL iq
so rv2
)(cos
r
LkL iq
so
![Page 9: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/9.jpg)
MIT EECS 6.837, Cutler and Durand 9
22
)(
)(cos
r
Lk
r
LkL iq
siq
so hn
Blinn-Torrance Variation• Parameters
– ks: specular reflection coefficient
– q : specular reflection exponent
Surface
lCamera
v
||vl||
vlh
h
Implement this version of Phong(because it’s what OpenGL uses & we want to match)
n
![Page 10: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/10.jpg)
MIT EECS 6.837, Cutler and Durand 10
Additional Phong Clamping Term
• Surfaces facing away from the light should not be lit (if N·L < 0)
• Scale by dot product to avoid a sharp edge at the light’s grazing angle: specular *= max(N·L,0)
![Page 11: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/11.jpg)
MIT EECS 6.837, Cutler and Durand 11
BRDFs in the Movie Industry• http://www.virtualcinematography.org/publications/acrobat/BRDF-s2003.pdf
• For the Matrix movies
• Agent Smith clothes are CG, with measured BRDF
![Page 12: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/12.jpg)
MIT EECS 6.837, Cutler and Durand 12
How Do We Obtain BRDFs?
• Gonioreflectometer– 4 degrees of freedom
Source: Greg Ward
![Page 13: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/13.jpg)
MIT EECS 6.837, Cutler and Durand 13
• http://www.virtualcinematography.org/publications/acrobat/BRDF-s2003.pdf
• For the Matrix movies
gonioreflectometer Measured BRDF
Measured BRDF Test rendering
BRDFs in the Movie Industry
![Page 14: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/14.jpg)
MIT EECS 6.837, Cutler and Durand 14
Photo CG Photo CG
BRDFs in the Movie Industry
![Page 15: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/15.jpg)
MIT EECS 6.837, Cutler and Durand 15
BRDF Models• Phenomenological
– Phong [75]• Blinn [77]
– Ward [92]
– Lafortune et al. [97]
– Ashikhmin et al. [00]
• Physical– Cook-Torrance [81]
– He et al. [91]
Roughlyincreasingcomputationtime
![Page 16: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/16.jpg)
MIT EECS 6.837, Cutler and Durand 16
Fresnel Reflection
• Increasing specularity near grazing angles.
Source: Lafortune et al. 97
![Page 17: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/17.jpg)
MIT EECS 6.837, Cutler and Durand 17
Anisotropic BRDFs
• Surfaces with strongly oriented microgeometry elements
• Examples: – brushed metals,– hair, fur, cloth, velvet
Source: Westin et.al 92
![Page 18: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/18.jpg)
MIT EECS 6.837, Cutler and Durand 18
Questions?
![Page 19: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/19.jpg)
MIT EECS 6.837, Cutler and Durand 19
Today: Ray Tracing
Image by Turner Whitted
![Page 20: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/20.jpg)
MIT EECS 6.837, Cutler and Durand 20
Overview of Today
• Shadows
• Reflection
• Refraction
• Recursive Ray Tracing
![Page 21: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/21.jpg)
MIT EECS 6.837, Cutler and Durand 21
Ray Casting (a.k.a. Ray Shooting)for every pixel
construct a ray
for every object intersect ray with object
Complexity?O(n * m)
n = number of objects, m = number of pixels
![Page 22: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/22.jpg)
MIT EECS 6.837, Cutler and Durand 22
Ray Casting with Phong Shading
When you’ve found the closest intersection:
color = ambient*hit->getMaterial()->getDiffuseColor() for every light color += hit->getMaterial()->Shade (ray, hit, directionToLight, lightColor) return color
Complexity? O(n * m * l)
l = number
of lights
![Page 23: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/23.jpg)
MIT EECS 6.837, Cutler and Durand 23
Questions?• Image computed using
the RADIANCE system by Greg Ward
![Page 24: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/24.jpg)
MIT EECS 6.837, Cutler and Durand 24
Overview of Today
• Shadows
• Reflection
• Refraction
• Recursive Ray Tracing
![Page 25: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/25.jpg)
MIT EECS 6.837, Cutler and Durand 25
color = ambient*hit->getMaterial()->getDiffuseColor() for every light Ray ray2(hitPoint, directionToLight) Hit hit2(distanceToLight, NULL, NULL) For every object object->intersect(ray2, hit2, 0) if (hit2->getT() = distanceToLight) color += hit->getMaterial()->Shade (ray, hit, directionToLight, lightColor) return color
How Can We Add Shadows?
![Page 26: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/26.jpg)
MIT EECS 6.837, Cutler and Durand 26
color = ambient*hit->getMaterial()->getDiffuseColor() for every light Ray ray2(hitPoint, directionToLight) Hit hit2(distanceToLight, NULL, NULL) For every object object->intersect(ray2, hit2, 0) if (hit2->getT() = distanceToLight) color += hit->getMaterial()->Shade (ray, hit, directionToLight, lightColor) return color
Problem: Self-Shadowing
Without epsilon With epsilon
epsilon)
![Page 27: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/27.jpg)
MIT EECS 6.837, Cutler and Durand 27
Shadow Optimization• Shadow rays are special: Can we accelerate our code?• We only want to know whether there is an intersection,
not which one is closest• Special routine Object3D::intersectShadowRay()
– Stops at first intersection
![Page 28: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/28.jpg)
MIT EECS 6.837, Cutler and Durand 28
Questions?• Image Henrik Wann Jensen
![Page 29: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/29.jpg)
MIT EECS 6.837, Cutler and Durand 29
Overview of Today
• Shadows
• Reflection
• Refraction
• Recursive Ray Tracing
![Page 30: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/30.jpg)
MIT EECS 6.837, Cutler and Durand 30
Mirror Reflection• Cast ray symmetric with
respect to the normal• Multiply by reflection
coefficient (color)• Don’t forget to add epsilon
to the ray
Without epsilon
With epsilon
![Page 31: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/31.jpg)
MIT EECS 6.837, Cutler and Durand 31
Reflection
• Reflection angle = view angle
• R = V – 2 (V · N) N
RVV R
N
V N N
V N N
V
![Page 32: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/32.jpg)
MIT EECS 6.837, Cutler and Durand 32
Amount of Reflection• Traditional ray tracing (hack)
– Constant reflectionColor
• More realistic:– Fresnel reflection term (more reflection at grazing angle)
– Schlick’s approximation: R()=R0+(1-R0)(1-cos )5
R
V
R
V
N
metal Dielectric (glass)
![Page 33: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/33.jpg)
MIT EECS 6.837, Cutler and Durand 33
Questions?
• Image by Henrik Wann Jensen
![Page 34: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/34.jpg)
MIT EECS 6.837, Cutler and Durand 34
Overview of Today
• Shadows
• Reflection
• Refraction
• Recursive Ray Tracing
![Page 35: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/35.jpg)
MIT EECS 6.837, Cutler and Durand 35
Transparency
• Cast ray in refracted direction
• Multiply by transparency coefficient (color)
![Page 36: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/36.jpg)
MIT EECS 6.837, Cutler and Durand 36
Qualitative Refraction
From “Color and Light in Nature” by Lynch and Livingston
![Page 37: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/37.jpg)
MIT EECS 6.837, Cutler and Durand 37
RefractionI = N cos Өi – M sin Өi
M = (N cos Өi – I) / sin Өi
T = – N cos ӨT + M sin ӨT
= – N cos ӨT + (N cos Өi – I) sin ӨT / sin Өi
= – N cos ӨT + (N cos Өi – I) ηr
= [ ηr cos Өi – cos ӨT ] N – ηr I
= [ ηr cos Өi – √1 – sin2 ӨT ] N – ηr I
= [ ηr cos Өi – √1 – ηr2 sin2 Өi ] N – ηr I
= [ ηr cos Өi – √1 – ηr2 (1 – cos2 Өi ) ] N – ηr I
= [ ηr (N · I) – √1 – ηr2 (1 – (N · I)2 ) ] N – ηr I
I
T
Өi
ӨT
N
-N
MηT
ηi
Snell-Descartes Law:ηi sin Өi = ηT sin ӨT
sin ӨT ηi = = ηr sin Өi ηT
• Total internal reflection when the square root is imaginary
• Don’t forget to normalize!
N cos Өi
– M sin Өi
![Page 38: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/38.jpg)
MIT EECS 6.837, Cutler and Durand 38
• Make sure you know whether you’re entering or leaving the transmissive material:
• Note: We won’t ask you to trace rays through intersecting transparent objects
Refraction & the Sidedness of Objects
T
ηT = material index
ηi=1
N
T
ηT= 1
ηi = material index
N
II
![Page 39: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/39.jpg)
MIT EECS 6.837, Cutler and Durand 39
Total Internal Reflection
From “Color and Light in Nature” by Lynch and Livingston
![Page 40: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/40.jpg)
MIT EECS 6.837, Cutler and Durand 40
Cool Refraction Demo
• Enright, D., Marschner, S. and Fedkiw, R.,
![Page 41: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/41.jpg)
MIT EECS 6.837, Cutler and Durand 41
Cool Refraction Demo
• Enright, D., Marschner, S. and Fedkiw, R.,
![Page 42: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/42.jpg)
MIT EECS 6.837, Cutler and Durand 42
Refraction and the Lifeguard Problem
• Running is faster than swimming Beach
Person in trouble
Lifeguard
Water
Run
Swim
![Page 43: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/43.jpg)
MIT EECS 6.837, Cutler and Durand 43
How does a Rainbow Work?• From “Color and Light in Nature” by Lynch and Livingstone
![Page 44: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/44.jpg)
MIT EECS 6.837, Cutler and Durand 44
Wavelength
Pittoni, 1725, Allegory to NewtonPink Floyd, The Dark Side of the Moon
• Refraction is wavelength-dependent– Refraction increases as the
wavelength of light decreases
– violet and blue experience more bending than orange and red
• Newton’s experiment
• Usually ignored in graphics
![Page 45: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/45.jpg)
MIT EECS 6.837, Cutler and Durand 45
Rainbow
• Refraction depends on wavelength
• Rainbow is caused by refraction + internal reflection + refraction
• Maximum for angle around 42 degrees
From “Color and Light in Nature” by Lynch and Livingstone
![Page 46: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/46.jpg)
MIT EECS 6.837, Cutler and Durand 46
Questions?
![Page 47: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/47.jpg)
MIT EECS 6.837, Cutler and Durand 47
Overview of Today
• Shadows
• Reflection
• Refraction
• Recursive Ray Tracing
![Page 48: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/48.jpg)
MIT EECS 6.837, Cutler and Durand 48
Stopping criteria:
• Recursion depth– Stop after a number
of bounces
• Ray contribution– Stop if reflected /
transmitted contribution becomes too small
trace rayIntersect all objectscolor = ambient termFor every light
cast shadow ray color += local shading term
If mirrorcolor += colorrefl * trace reflected ray
If transparentcolor += colortrans * trace transmitted ray
• Does it ever end?
Recap: Ray Tracing
![Page 49: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/49.jpg)
MIT EECS 6.837, Cutler and Durand 49
Recursion For Reflection
1 recursion0 recursion 2 recursions
![Page 50: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/50.jpg)
MIT EECS 6.837, Cutler and Durand 50
The Ray Tree
R2
R1
R3
L2
L1L3N1
N2
N3
T1
T3
Ni surface normal
Ri reflected ray
Li shadow ray
Ti transmitted (refracted) ray
Eye
L1
T3R3
L3L2
T1R1
R2
Eye
Complexity?
![Page 51: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/51.jpg)
MIT EECS 6.837, Cutler and Durand 51
Ray Debugging (Assignment 4)
• Visualize the ray tree for single image pixel
incoming
reflected ray
shadow ray
transmitted (refracted) ray
![Page 52: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/52.jpg)
MIT EECS 6.837, Cutler and Durand 52
Does Ray Tracing Simulate Physics?
• Photons go from the light to the eye, not the other way
• What we do is backward ray tracing
![Page 53: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/53.jpg)
MIT EECS 6.837, Cutler and Durand 53
Forward Ray Tracing
• Start from the light source– But low probability to reach the eye
• What can we do about it?– Always send a ray to the eye…. still not efficient
![Page 54: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/54.jpg)
MIT EECS 6.837, Cutler and Durand 54
Does Ray Tracing Simulate Physics?
• Ray Tracing is full of dirty tricks
• For example, shadows of transparent objects:– opaque?– multiply by transparency color?
(ignores refraction & does not produce caustics)
![Page 55: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/55.jpg)
MIT EECS 6.837, Cutler and Durand 55
Correct Transparent ShadowAnimation by Henrik Wann Jensen
Using advanced refraction technique (refraction for illumination is usually not handled that well)
![Page 56: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/56.jpg)
MIT EECS 6.837, Cutler and Durand 56
The Rendering Equation
• Clean mathematical framework for light-transport simulation
• We’ll see this later
• At each point, outgoing light in one directionis the integral of incoming light in all directions multiplied by reflectance property
![Page 57: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/57.jpg)
MIT EECS 6.837, Cutler and Durand 57
A Look Ahead
• Assignment 2– Transformations & More Primitives
• Assignment 3 – OpenGL Pre-Visualization & Phong Shading
• Assignment 4– Ray Tracing (Shadows, Reflections, Refractions)
![Page 58: MIT EECS 6.837, Cutler and Durand 1 MIT 6.837 - Ray Tracing](https://reader035.vdocuments.net/reader035/viewer/2022062217/56649e7f5503460f94b837e3/html5/thumbnails/58.jpg)
MIT EECS 6.837, Cutler and Durand 58
Next TimeModeling
Transformations
Illumination(Shading)
Viewing Transformation(Perspective / Orthographic)
Clipping
Projection (to Screen Space)
Scan Conversion(Rasterization)
Visibility / Display
Introduction to the Graphics Pipeline