CS488 - Introduction to Computer Graphics - Lecture 25

Comments and Questions


  1. Intersection tests
  2. Anti-aliasing
  3. Office hours

Ray Tracing

Distribution Ray Tracing

What's wrong with

  1. Beam tracing
  2. Super sampling
  3. Stochastic sampling

It doesn't try explicitly to put the work into the places that make the most difference.

Trying to do so we should get heuristics like

Here are a few such heuristics

Distribute carefully over

  1. Reflection directions <==>
  2. Area lights <==>
  3. Aperture <==>
  4. Time <==>

All these techniques are inordinately expensive!


The caustic project.

What is a caustic?

Bidirectional Ray Tracing

Recursive ray tracing makes a tree with a big fan-out: Cost ~ exp( n*d ,) where d is the depth, n is the fan-out.

Bright idea

  1. Trace out from eye
  2. Trace out from sources of illumination
  3. Match the rays in the centre ... somehow!
  4. The resulting double cone gets the same performance at Cost ~ exp( n*d/2 ), which is surely worth it.

The problem is step 3. How do you match the rays? The current state of the art is photon mapping. Here's how it works.

From every light source

For each pixel

Notice tuning and calibration needed.

What creates the caustics?

Participating Media

What is fog?

What is beer?

What they have in common is

What happens to the light that doesn't make it through?



Light Fields

Surface Properties

Texture Mapping

  1. Basic
    1. Start with a 2D image: pixellated or procedural
    2. Map 2D image onto primitive using a 2D affine transformation
      • Simple if the surface of the primitive is flat
      • otherwise, ...
      • Texture pixels normally do not match display pixels, so some image processing may be needed.
    3. Backwards map intersection point with ray into the image to get the surface properties
  2. Normal Mapping (Bump mapping)
    1. Start with a difference surface, defined with respect to the surface
    2. Calculate the normals to the difference surface and map them onto the surface of the primitive
    3. Use the mapped surface models for lighting
    4. No occlusion, shadows are wrong, silhouettes are wrong, nobody notices!
  3. Solid Textures
    1. Solution to mapping texture onto curved surfaces
    2. Usually procedural

(Un)natural Phenomena


Subsurface Scattering

Return to: