ILLUMINATION MODELS &
SHADING
Prof. Bailappa Bhovi
Department of Computer Engineering
International Institute of Information Technology, I²IT
www.isquareit.edu.in
Illumination Models and Shading
• Light Source Models
• Ambient Illumination
• Diffuse Reflection
• Specular Reflection
• Polygon Rendering Methods
• Flat Shading
• Gouraud Shading
• Phong Shading
Illumination Models
•Motivation: In order to produce realistic images,
we must simulate the appearance of surfaces under
various lighting conditions
•Illumination Model: Given the illumination
incident at a point on a surface, quantifies the
reflected light
Illumination Model Parameters
•Lighting effects are described with models that consider the
interaction of light sources with object surfaces
•The factors determining the lighting effects are:
– The light source parameters:
• Positions
• Electromagnetic Spectrum
• Shape
– The surface parameters
• Position
• Reflectance properties
• Position of nearby surfaces
– The eye (camera) parameters
• Position
• Sensor spectrum sensitivities
Illumination Models and Rendering
•An illumination model is used to calculate the
intensity of the light that is reflected at a given point
on a surface
•A rendering method uses intensity calculations
from the illumination model to determine the light
intensity at all pixels in the image
Light Source Models
• Point Source (a): All light rays originate at a point and
radially diverge. A reasonable approximation for sources
whose dimensions are small compared to the object size
• Parallel source (b): Light rays are all parallel. May be
modeled as a point source at infinite distance (the sun)
• Distributed source (c): All light rays originate at a finite
area in space. It models a nearby source, such as a
fluorescent light
b
a
c
Illumination Models
• Simplified and fast methods for calculating
surfaces intensities, mostly empirical
• Calculations are based on optical properties
of surfaces and the lighting conditions (no
reflected sources nor shadows)
• Light sources are considered to be point
sources
• Reasonably good approximation for most
scenes
Ambient Illumination
• Assume there is some non-directional light
in the environment (background light)
• The amount of ambient light incident on
each object is constant for all surfaces and
over all directions
• Very simple model, not very realistic
• OpenGL default
Ambient Illumination
• The reflected intensity Iamb of any point on the
surface is:
Ia - ambient light intensity
Ka  [0,1] - surface ambient reflectivity
• In principle Ia and Ka are functions of color, sowe
have IR
amb, IG
amb and IB
amb
Iamb = Ka Ia
Ambient Illumination
• Example:
Diffuse Reflection
• Diffuse (Lambertian) surfaces are rough or grainy,
like clay, soil, fabric
• The surface appears
equally bright from all
viewing directions
• The brightness at each
point is proportional to
cos()

N
L
Diffuse Reflection
• Brightness is proportional to cos() because a
surface (a) perpendicular to the light direction is
more illuminated than a surface (b) at an oblique
angle
a b

N
L
Diffuse Reflection
• The reflected intensity Idiff of a point on the
surface is:
Idiff = Kd Ipcos() = Kd Ip(NL)
Ip - the point light intensity. May appear as
attenuated source fatt(r)IP
Kd  [0,1] - the surface diffuse reflectivity
N - the surface normal
L - the light direction
NOTE: If N and L have unitary length: cos() = N  L
Diffuse Reflection
• Example:
Diffuse Reflection
• Example: diffuse reflection from different
light directions
Diffuse Reflection
•Commonly, there are two types of light sources:
– A background ambient light
– A point light source
• The equation that combines the two models is:
I = Idiff + Iamb = Kd Ip NL + Ka Ia
• Note this is the model for one color and it should
be replicated for each channel: IR, IG and IB
Diffuse Reflection
• Example:
0 0.3 0.6
0.3
0.5
0.7
Ka
Kd
Specular Reflection
• Models shiny and glossy surfaces (like metal,
plastic, etc..) with highlights
• Reflectance intensity changes with reflected angle
• An ideal specular surface (mirror) reflects light
exclusively in one direction: R
• Glossy objects are not ideal mirrors and reflect
in the immediate vicinity of R
N
 
L
N
 
R L R
V
Ideal specular surface Non-ideal specular surface
Specular Reflection
• The Phong Model: reflected specular intensity
falls off as some power of cos ():
Ispec = Ks Ipcosn() = Ks Ip(RV)n
 
Ks - the surface specular reflectivity
n – specular reflection parameter, determining
the deviation from ideal specular surface
(for a perfect mirror n=)
N
L R
V
Specular surface
Specular Reflection
• The Phong Model: plots of cosn() for three
values of the specular parameter n
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2
0
0.2
0.4
0.6
0.8
1
n=1
n=8
n=64
 
N
L R
V
Specular surface
Specular Reflection
•The illumination equation combined with diffuse
reflection is:
I = Iamb+Idiff+Ispec=
Ka Ia + Ip (Kd NL + Ks(RV)n)
• If k light sources are present in the scene:
diff specI= Iamb+k (Ik +Ik )
Specular Reflection
• Example:
0.2 0.5 0.8
0
0.3
0.7
Kd
Ks
Specular Reflection
• Example: effects of the specular parameter n
n=50
n=10
n=3
Specular Reflection
• Example:
Ambient Illumination
Ambient + Diffuse
Ambient + Diffuse + Specular
Composing Light Sources
• Example:
Polygon Rendering Methods
• A freeform surface can be approximated
by polyhedra
• Rendering: calculate the illumination at
each surface point
• Applying the illumination model at each
surface point is computationally expensive
Flat Shading
• A single intensity is calculated for each surface
polygon
• Fast and simple method
• Gives reasonable result only if all of the following
assumptions are valid:
– The object is a polyhedron
– Light source is far away
from the surface so that
N•L is constant over each
polygon
– Viewing position is far away
from the surface so that V•R
is constant over each polygon
Gouraud Shading
• Renders the polygon surface by linearly
interpolating intensity values across the surface
Gouraud Shading Algorithm:
1. Determine the normal at each polygon vertex
2. Apply an illumination model to each vertex to
calculate the vertex intensity
3. Linearly interpolate the vertex intensities over
the surface polygon
Gouraud Shading
•The normal Nv of a vertex is an average of all
neighboring normals:

k
k
k
 k
V
N
N
N 
Gouraud Shading
2
21
41
1
21
24
4 I
y  y
I 
y  y
I 
2
23
53
3
23
25
5 I
y  y
y  y
I 
y  y
y  y
I 
5
45
4p
4
45
p5
p I
x  x
y  y
x  x
I 
x  x
y  y
x  x
I 
I1
I I4 5
scan line
I2
x
• Interpolation of the vertex intensities
y
I3
IP
Gouraud Shading
• Example: Gouraud shading of a sphere
Phong Shading
•A more accurate method for rendering a
polygon surface is to interpolate normal
vectors, and then apply the illumination
model to each surface point
• Phong Shading Algorithm:
1. Determine the normal at each polygon vertex
2. Linearly interpolate the vertex normals
over the surface polygon
3. Apply the illumination model along each scan
line to calculate intensity of each surface
Phong Shading
• Example: Phong shading of a sphere
Polygon Rendering Methods
• Example:
Flat
Gouraud
Phong
Polygon Rendering Methods
• Example:
Flat
Gouraud
Phong
Polygon Rendering Methods
• Example:
Flat Gouraud
Phong
Thank-You
International Institute of Information Technology
(I²IT)
P-14, Rajiv Gandhi Infotech Park, MIDC Phase – 1,
Hinjawadi, Pune – 411057, India
http://www.isquareit.edu.in/
info@isquareit.edu.in

Illumination Models & Shading

  • 1.
    ILLUMINATION MODELS & SHADING Prof.Bailappa Bhovi Department of Computer Engineering International Institute of Information Technology, I²IT www.isquareit.edu.in
  • 2.
    Illumination Models andShading • Light Source Models • Ambient Illumination • Diffuse Reflection • Specular Reflection • Polygon Rendering Methods • Flat Shading • Gouraud Shading • Phong Shading
  • 3.
    Illumination Models •Motivation: Inorder to produce realistic images, we must simulate the appearance of surfaces under various lighting conditions •Illumination Model: Given the illumination incident at a point on a surface, quantifies the reflected light
  • 4.
    Illumination Model Parameters •Lightingeffects are described with models that consider the interaction of light sources with object surfaces •The factors determining the lighting effects are: – The light source parameters: • Positions • Electromagnetic Spectrum • Shape – The surface parameters • Position • Reflectance properties • Position of nearby surfaces – The eye (camera) parameters • Position • Sensor spectrum sensitivities
  • 5.
    Illumination Models andRendering •An illumination model is used to calculate the intensity of the light that is reflected at a given point on a surface •A rendering method uses intensity calculations from the illumination model to determine the light intensity at all pixels in the image
  • 6.
    Light Source Models •Point Source (a): All light rays originate at a point and radially diverge. A reasonable approximation for sources whose dimensions are small compared to the object size • Parallel source (b): Light rays are all parallel. May be modeled as a point source at infinite distance (the sun) • Distributed source (c): All light rays originate at a finite area in space. It models a nearby source, such as a fluorescent light b a c
  • 7.
    Illumination Models • Simplifiedand fast methods for calculating surfaces intensities, mostly empirical • Calculations are based on optical properties of surfaces and the lighting conditions (no reflected sources nor shadows) • Light sources are considered to be point sources • Reasonably good approximation for most scenes
  • 8.
    Ambient Illumination • Assumethere is some non-directional light in the environment (background light) • The amount of ambient light incident on each object is constant for all surfaces and over all directions • Very simple model, not very realistic • OpenGL default
  • 9.
    Ambient Illumination • Thereflected intensity Iamb of any point on the surface is: Ia - ambient light intensity Ka  [0,1] - surface ambient reflectivity • In principle Ia and Ka are functions of color, sowe have IR amb, IG amb and IB amb Iamb = Ka Ia
  • 10.
  • 11.
    Diffuse Reflection • Diffuse(Lambertian) surfaces are rough or grainy, like clay, soil, fabric • The surface appears equally bright from all viewing directions • The brightness at each point is proportional to cos()  N L
  • 12.
    Diffuse Reflection • Brightnessis proportional to cos() because a surface (a) perpendicular to the light direction is more illuminated than a surface (b) at an oblique angle a b  N L
  • 13.
    Diffuse Reflection • Thereflected intensity Idiff of a point on the surface is: Idiff = Kd Ipcos() = Kd Ip(NL) Ip - the point light intensity. May appear as attenuated source fatt(r)IP Kd  [0,1] - the surface diffuse reflectivity N - the surface normal L - the light direction NOTE: If N and L have unitary length: cos() = N  L
  • 14.
  • 15.
    Diffuse Reflection • Example:diffuse reflection from different light directions
  • 16.
    Diffuse Reflection •Commonly, thereare two types of light sources: – A background ambient light – A point light source • The equation that combines the two models is: I = Idiff + Iamb = Kd Ip NL + Ka Ia • Note this is the model for one color and it should be replicated for each channel: IR, IG and IB
  • 17.
    Diffuse Reflection • Example: 00.3 0.6 0.3 0.5 0.7 Ka Kd
  • 18.
    Specular Reflection • Modelsshiny and glossy surfaces (like metal, plastic, etc..) with highlights • Reflectance intensity changes with reflected angle • An ideal specular surface (mirror) reflects light exclusively in one direction: R • Glossy objects are not ideal mirrors and reflect in the immediate vicinity of R N   L N   R L R V Ideal specular surface Non-ideal specular surface
  • 19.
    Specular Reflection • ThePhong Model: reflected specular intensity falls off as some power of cos (): Ispec = Ks Ipcosn() = Ks Ip(RV)n   Ks - the surface specular reflectivity n – specular reflection parameter, determining the deviation from ideal specular surface (for a perfect mirror n=) N L R V Specular surface
  • 20.
    Specular Reflection • ThePhong Model: plots of cosn() for three values of the specular parameter n -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 0 0.2 0.4 0.6 0.8 1 n=1 n=8 n=64   N L R V Specular surface
  • 21.
    Specular Reflection •The illuminationequation combined with diffuse reflection is: I = Iamb+Idiff+Ispec= Ka Ia + Ip (Kd NL + Ks(RV)n) • If k light sources are present in the scene: diff specI= Iamb+k (Ik +Ik )
  • 22.
    Specular Reflection • Example: 0.20.5 0.8 0 0.3 0.7 Kd Ks
  • 23.
    Specular Reflection • Example:effects of the specular parameter n n=50 n=10 n=3
  • 24.
    Specular Reflection • Example: AmbientIllumination Ambient + Diffuse Ambient + Diffuse + Specular
  • 25.
  • 26.
    Polygon Rendering Methods •A freeform surface can be approximated by polyhedra • Rendering: calculate the illumination at each surface point • Applying the illumination model at each surface point is computationally expensive
  • 27.
    Flat Shading • Asingle intensity is calculated for each surface polygon • Fast and simple method • Gives reasonable result only if all of the following assumptions are valid: – The object is a polyhedron – Light source is far away from the surface so that N•L is constant over each polygon – Viewing position is far away from the surface so that V•R is constant over each polygon
  • 28.
    Gouraud Shading • Rendersthe polygon surface by linearly interpolating intensity values across the surface Gouraud Shading Algorithm: 1. Determine the normal at each polygon vertex 2. Apply an illumination model to each vertex to calculate the vertex intensity 3. Linearly interpolate the vertex intensities over the surface polygon
  • 29.
    Gouraud Shading •The normalNv of a vertex is an average of all neighboring normals:  k k k  k V N N N 
  • 30.
    Gouraud Shading 2 21 41 1 21 24 4 I y y I  y  y I  2 23 53 3 23 25 5 I y  y y  y I  y  y y  y I  5 45 4p 4 45 p5 p I x  x y  y x  x I  x  x y  y x  x I  I1 I I4 5 scan line I2 x • Interpolation of the vertex intensities y I3 IP
  • 31.
    Gouraud Shading • Example:Gouraud shading of a sphere
  • 32.
    Phong Shading •A moreaccurate method for rendering a polygon surface is to interpolate normal vectors, and then apply the illumination model to each surface point • Phong Shading Algorithm: 1. Determine the normal at each polygon vertex 2. Linearly interpolate the vertex normals over the surface polygon 3. Apply the illumination model along each scan line to calculate intensity of each surface
  • 33.
    Phong Shading • Example:Phong shading of a sphere
  • 34.
    Polygon Rendering Methods •Example: Flat Gouraud Phong
  • 35.
    Polygon Rendering Methods •Example: Flat Gouraud Phong
  • 36.
    Polygon Rendering Methods •Example: Flat Gouraud Phong
  • 37.
    Thank-You International Institute ofInformation Technology (I²IT) P-14, Rajiv Gandhi Infotech Park, MIDC Phase – 1, Hinjawadi, Pune – 411057, India http://www.isquareit.edu.in/ [email protected]