Rendering We know how to specify the geometry but how is the
color calculated
Slide 3
Rendering We know how to specify the geometry but how is the
color calculated
Slide 4
Rendering We know how to specify the geometry but how is the
color calculated
Slide 5
Rendering: simulation of light transport What makes up the
final color of an object?
Slide 6
Rendering: simulation of light transport Diffuse scattering o
matt surfaces Specular reflection o shiny surfaces o highlight
Transparency o glass, water o penetrate the surface
Slide 7
Rendering: simulation of light transport How do we represent
these observations in a mathematical framework
Slide 8
Rendering: simulation of light transport Real time rendering is
generally not concerned with using a "correct" lighting equation,
just a series of hacks to make things look right with as little
computational effort as possible
Slide 9
Illumination Models Local o Direct illumination of surfaces by
light sources Global o all light/surface interactions for entire
environment
Slide 10
Global illumination
Slide 11
Slide 12
Local illumination Input: o a 3D object o Material and color of
the object o Position and structure of the light source o Intensity
of the light source Output: o Color and intensity of points of the
given object A (modest) example of shading
Slide 13
Representing 3D Objects Collection of triangles or mesh
Slide 14
Dealing with color Three component intensity (red, green, blue)
Luminance (intensity) of the source o Red component of source red
component of image o Green component of source green component of
image o Blue component of source blue component of image Three
similar but independent calculations We focus on one scalar value
only
Slide 15
Diffuse reflection A perfect diffuse reflector (Lambertian
surface) scatters the light equally in all directions Same
appearance to all viewers Depends on o Material of the surface o
The position of the light
Normals o For each triangle we can define a normal for the face
o For each vertex we an define a normal by interpolating normals of
attached faces
Slide 20
Diffuse: Two important vectors To compute the intensity at P,
we need o The unit normal vector N, o The unit vector L, from P to
the light L N P
Slide 21
Diffuse: Two important vectors To compute the intensity at P,
we need o The unit normal vector N, o The unit vector L, from P to
the light L N P What is the diffuse color at P?
Slide 22
Lamberts cosine law I : diffuse reflection at P I d : intensity
of the light from source coefficient of diffuse reflection
Slide 23
Coefficient of diffuse reflection k d is usually determined by
a trial and error approach Examples: Component Gold Black plastic
Silver Red 0.75 0.01 0.5 Green 0.6 0.01 0.5 Blue 0.22 0.01 0.5 k d
=0.05 k d =0.25 k d =0.5 k d =0.75 k d =1
Slide 24
Specular reflection Diffusive reflection: no highlights, rough
surface Specular reflection: highlights, shiny and smooth surfaces
View dependent reflection
Slide 25
Three important vectors To compute the intensity at P, we need
o The unit normal vector N, o The unit vector L, from P to the
light o The unit vector V, from P to the viewer L N V P
Slide 26
Three important vectors To compute the intensity at P, we need
o The unit normal vector N, o The unit vector L, from P to the
light o The unit vector V, from P to the viewer L N V P What is the
specular illumination at P?
Slide 27
The shininess coefficient 0 90 o -90 o increasing n
Slide 28
I : specular reflection at P I d : intensity of the light from
source coefficient of specular reflection n: controls shininess The
Phong model for specular reflection P N L R P N L R V
Slide 29
Ambient light Physical rules are too simplified No indirect or
global interaction of light A hack to overcome the problem: use
ambient light
Slide 30
Ambient light specification Not situated at any particular
point Spreads uniformly in all directions I a : intensity of
ambient light in the environment I : ambient light at a given point
: coefficient of ambient light reflection k a =0 k a =0.5 k a
=1
Slide 31
A combined model (The Phong local illumination model) The final
model = diffuse + specular + ambient
Slide 32
How does it work in OpenGL
Slide 33
Flat Shading Individual faces are visualized Same color for any
point in the face
Slide 34
Smooth Shading Visualize the underlying surface Each point on
the face has its own color Two techniques Gouraud and Phong
shading
Slide 35
Shading GouraudPhongFlat Normal Per VertexInterpolated normal
for each point across face Normal per face Color per vertex,
interpolated across face Color calculated per pixel Color
calculated per face Faster then phong Bad specular Costly (not
really any more) Fast, good for distant objects N
Slide 36
Clarification Phong reflection model or phong lighting refers
to Phong Shading refers to filling a triangle by interpolating the
normal and calculating the color at each point
Slide 37
Gouraud Shading Specular highlight quality tied to detail of
mesh Specular highlights can even be missed
Slide 38
Incorporating a distance term a,b,c are control parameters
Empirical formula:
Slide 39
Slide 40
Slide 41
Slide 42
Multiple light sources The total reflection at p is the sum of
all contributed intensities from all sources OpenGL allows us to
define several light sources