CS 445 / 645 Introduction to Computer Graphics - PowerPoint PPT Presentation

1 / 30
About This Presentation
Title:

CS 445 / 645 Introduction to Computer Graphics

Description:

Assuming that our surface is defined as a ... Mach Banding. Artifact at discontinuities in intensity or intensity slope. C4 ... Reduce the number of rays cast ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 31
Provided by: dav5209
Category:

less

Transcript and Presenter's Notes

Title: CS 445 / 645 Introduction to Computer Graphics


1
CS 445 / 645Introduction to Computer Graphics
  • Lecture 15
  • Shading

2
Lighting Review
  • Lighting Models
  • Ambient
  • Normals dont matter
  • Lambert/Diffuse
  • Angle between surface normal and light
  • Phong/Specular
  • Surface normal, light, and viewpoint

3
Applying Illumination
  • We now have an illumination model for a point on
    a surface
  • Assuming that our surface is defined as a mesh of
    polygonal facets, which points should we use?
  • Keep in mind
  • Its a fairly expensive calculation
  • Several possible answers, each with different
    implications for the visual quality of the result

4
Applying Illumination
  • With polygonal/triangular models
  • Each facet has a constant surface normal
  • If the light is directional, the diffuse
    reflectance is constant across the facet. Why?

5
Flat Shading
  • The simplest approach, flat shading, calculates
    illumination at a single point for each polygon
  • If an object really is faceted, is this accurate?

6
Is flat shading realistic for faceted object?
  • No
  • For point sources, the direction to light varies
    across the facet

7
Flat Shading
  • We can refine it a bit by evaluating the Phong
    lighting model at each pixel of each polygon, but
    the result is still clearly faceted
  • To get smoother-looking surfaceswe introduce
    vertex normals at eachvertex
  • Usually different from facet normal
  • Used only for shading
  • Think of as a better approximation of the real
    surface that the polygons approximate

8
Vertex Normals
  • Vertex normals may be
  • Provided with the model
  • Computed from first principles
  • Approximated by averaging the normals of the
    facets that share the vertex

9
Gouraud Shading
  • This is the most common approach
  • Perform Phong lighting at the vertices
  • Linearly interpolate the resulting colors over
    faces
  • Along edges
  • Along scanlines

C1
c1 t1(c2-c1)
  • This is what OpenGL does
  • Does this eliminate the facets?

C3
C2
c1 t1(c2-c1) t3(c1 t2(c3-c1)- c1
t1(c2-c1))
c1 t2(c3-c1)
10
Gouraud Shading
  • Artifacts
  • Often appears dull, chalky
  • Lacks accurate specular component
  • If included, will be averaged over entire polygon

11
Gouraud Shading
  • Artifacts
  • Mach Banding
  • Artifact at discontinuities in intensity or
    intensity slope

C1
C4
C3
C2
Discontinuity in rateof color changeoccurs here
12
Phong Shading
  • Phong shading is not the same as Phong lighting,
    though they are sometimes mixed up
  • Phong lighting the empirical model weve been
    discussing to calculate illumination at a point
    on a surface
  • Phong shading linearly interpolating the surface
    normal across the facet, applying the Phong
    lighting model at every pixel
  • Same input as Gouraud shading
  • Usually very smooth-looking results
  • But, considerably more expensive

13
Phong Shading
  • Linearly interpolate the vertex normals
  • Compute lighting equations at each pixel
  • Can use specular component

N1
N4
Remember Normals used in diffuse and specular
terms Discontinuity in normals rate of change
is harder to detect
N3
N2
14
Shortcomings of Shading
  • Polygonal silhouettes remain

Gouraud Phong
15
Perspective Distortion
Imageplane
Break up large polygonswith many smaller ones
i
i
i
i
i
i
u
u
u
u
u
u
Z into the scene
Notice that linear interpolation in screen
spacedoes not align with linear interpolation in
world space
16
Perspective Distortion
Imageplane
Break up large polygonswith many smaller ones
Z into the scene
Notice that linear interpolation in screen
spacedoes not align with linear interpolation in
world space
17
Interpolation dependent on polygon orientation
Rotate -90oand colorsame point
18
Problems at Shared Vertices
Vertex B is shared by the two rectangles on the
right, but not by the one on the left
C
H
D
The first portion of the scanlineis interpolated
between DE and ACThe second portion of the
scanlineis interpolated between BC and GHA
large discontinuity could arise
B
G
F
E
A
19
Bad Vertex Averaging
20
Shading Models (Direct lighting)
  • Flat Shading
  • Compute Phong lighting once for entire polygon
  • Gouraud Shading
  • Compute Phong lighting at the vertices and
    interpolate lighting values across polygon
  • Phong Shading
  • Compute averaged vertex normals
  • Interpolate normals across polygon and perform
    Phong lighting across polygon

21
Global Illumination
  • Weve glossed over how light really works
  • And we will continue to do so
  • One step better
  • Global Illumination
  • The notion that a point is illuminated by more
    than light from local lights it is illuminated
    by all the emitters and reflectors in the global
    scene

22
The Rendering Equation
  • Jim Kajiya (Current head of Microsoft Research)
    developed this in 1986
  • I(x, x) is the total intensity from point x to
    x
  • g(x, x) 0 when x/x are occluded and 1/d2
    otherwise (d distance between x and x)
  • e(x, x) is the intensity emitted by x to x
  • r(x, x,x) is the intensity of light reflected
    from x to x through x
  • S is all points on all surfaces

23
The Rendering Equation
  • The light that hits x from x is the direct
    illumination from x and all the light reflected
    by x from all x
  • To implement
  • Must handle recursion effectively
  • Must support diffuse and specular light
  • Must model object shadowing

24
Shading Models (Indirect lighting)
  • Ray Tracing Radiosity

25
Recursive Ray Tracing
  • Cast a ray from the viewers eye through each
    pixel
  • Compute intersection of this ray with objects
    from scene
  • Closest intersecting object determines color

26
Recursive Ray Tracing
  • Cast a ray from intersected object to light
    sources and determine shadow/lighting conditions
  • Also spawn secondary rays
  • Reflection rays and refraction rays
  • Use surface normal as guide (angle of incidence
    equals angle of reflection)
  • If another object is hit, determine the light it
    illuminates by recursing through ray tracing

27
Recursive Ray Tracing
  • Stop recursing when
  • ray fails to intersect an object
  • user-specified maximum depth is reached
  • system runs out of memory
  • Common numerical accuracy error
  • Spawn secondary ray from intersection point
  • Secondary ray intersects another polygon on same
    object

28
Recursive Ray Tracing
  • Still producing PhDs after all these years
  • Many opportunities to improve efficiency and
    accuracy of ray tracing
  • Reduce the number of rays cast
  • Accurately capture shadows caused by non-lights
    (ray tracing from the light source)
  • Expensive to recompute as eyepoint changes

29
Image Synthesis Class
  • Prof. Humphreys is looking for students
  • Modeled after Stanford course (lets beat em)
  • See http//graphics.stanford.edu/courses/cs348b-c
    ompetition/

30
Radiosity
  • Ray tracing models specular reflection and
    refractive transparency, but still uses an
    ambient term to account for other lighting
    effects
  • Radiosity is the rate at which energy is emitted
    or reflected by a surface
  • By conserving light energy in a volume, these
    radiosity effects can be traced
Write a Comment
User Comments (0)
About PowerShow.com