



Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Classical ray tracing, focusing on efficiency and extending its capabilities. Topics include ray tracing algorithms, spatial data structures, and distributed ray tracing for phenomena like glossy reflections and soft shadows. The document also discusses the importance of efficient code and implementation details.
Typology: Study notes
1 / 5
This page cannot be seen from the preview
Don't miss anything!




To refresh our memories, it most important features are
Starting with this, we want to look more closely at two issues
A ray tracing system can be easily overcome with rays
k
yields
k
rays traced per eye ray
not
shadow rays
Consider this example
Several data structures in common practice
We’ll only test objects whose bounding volume is actually hit by ray
Helps us avoid unnecessary work
Can use grids & octrees similarly
many
times
Some general tips for efficient code
sqrt()
x*x
and never
pow(x, 2)
if
for
while
Make sure you get the right intersection
n
v r
n
θ
I
θ
r
point x = r(t)rgbColor color = blackfor each light source L
if( closest_hit(shadow_ray(x, L)) >= distance(L) )
color += shade_phong(s, x)
color += k_specular * trace(reflected_ray(s,r,x))color += k_transmit * trace(transmitted_ray(s,r,x))return color
What does this simulate?
Most surfaces are imperfect specular reflectors
We can directly simulate real glossy reflection
Area Light Source
Occluder
or
Blocker
Umbra
(complete shadow)
Penumbra
(partial shadow)
Penumbra
(partial shadow)
Our previous shadow method
Extends directly to area lights
Fortunately, we can do much better than this
Index
Time offset
Subarea oflight source
Reflected
angle offset
1
+0.01sec
Section 4/
1.5%
2
-0.03sec
Section 1/
0%
9
+0.2sec
Section 8/
0.2%