CS 184: COMPUTER GRAPHICS


PREVIOUS < - - - - > CS 184 HOME < - - - - > CURRENT < - - - - > NEXT

Lecture #24 -- Wed 4/20/2011.

Warm-up Problem:
Determine which of the locations (A, B, C, D)
has the maximum and the minimum ambient occlusion:


SOLUTION



Advanced Rendering Techniques, Global Illumination (cont.)

Last time I tried to give you agood understanding of the rendering problems and
the many approaches that have been invented to deal with challenging situations and effects.
Today we will discuss Ambient Occlusion, Radiosity, and
Photon Mapping in more detail.
But first some important definitions and generalizations:

BRDF (Bidirectional Reflectance Distribution Function)

The  BRDF  expresses a simple model of light interaction with a surface; it states what fraction of the incoming light from a particular direction ω' is sent off in the direction ω :
f_r(x, \vec w', \vec w) = \frac{dL_r(x, \vec w)}{L_i(x, \vec w')(\vec w' \cdot \vec n) d\vec w'}
This general expression, where L is radiance,  x  is a location on a surface,  n  is the surface normal at that point, and  ω  are direction vectors, can capture the surface properties of almost all materials; in principle there is such a formula for every spectral band of interest (e..g, R G B).
The simpler models of diffuse reflection, specular reflection, and Phong reflection are idealized special cases of the general 4-dimensional BRDF.
Highly anisotropic BRDF: Brushed Aluminum
If we also consider the dependency on wave length, the BRDF becomes 5-dimensional.


Subsurface Scattering:

A more sophisticated model of reflection also takes into consideration subsurface scattering (important for realistic rendering of faces, or marble statues). In this case photons may make a few bounces inside the matrial before they pop out again; thus they may emerge in a slightly different location from where they entered.
Alabaster Horse, by M. Goesele et al
Face Comparison, by H.W. Jensen et al

The Rendering Equation

This is of mostly academic/theoretical use. It calculates the amount of reflected light in any direction given full knowledge of the BRDF of the surface and of the incoming light distribution. It serves as the most abstract formal expression of the non-perceptual (physical) aspect of rendering. All specific rendering algorithms can understood as finding (approximate) solutions to some parts of this equation.

L_o(x, \vec w) = L_e(x, \vec w) + \int_\Omega f_r(x, \vec w', \vec w) L_i(x, \vec w') (\vec w' \cdot \vec n) d\vec w'
The outgoing light (Lo) {Radiance, radiometric flux per unit solid viewing angle, W/m2/sr}  for a particular position and direction is the sum of the emitted light (Le) and the reflected light. The reflected light is the sum of the incoming light (Li) {Irradiance radiometric flux per unit area, W/m2}  from all directions, multiplied by the surface reflection and cosine of incoming angle. By connecting outward light to inward light, via an interaction point, this equation stands for the whole 'light transport' — all the movement of photons — in a scene. (to learn more).

Ambient Occlusion -- approximate shadowing by occluding geometry

Radiosity -- a world space light transport algorithm

Photon Mapping -- a two-pass algorithm to approximate global illumination (Paper by H.W. Jensen)

For all of these subjects, Wikipedia is an even better source of information than your text book!


Course Schedule

Only one more week of lectures!  (RRR week schedule has chopped off 3 lectures from my last offering 2 years ago)

Focus on Projects. Stay on schedule. Fulfill your "mile-stones!  (As#11 and As#12 are intended to help you do this)
Project dmonstrations will be on Tuesday/Wednesday, May 10 and 11.

Eventually: The Final Exam: Friday, May 13. (Don't let this spook you!)
Perhaps an exam-question review session ? -- Say Wednesday, May 4, 10am-11am ??
Also check out the posted exams and their solutions!

More on Course Projects

Phase_2 (As#11) will be due this Saturday.
Revise and clarify your proposal by this Friday,
and show something on your project page that convinces us that you have started serious programming.
e.g., a rough geometry model of your main character, the overal test scene set-up for your fancy renderer,
       a first track geometry for your racing game, or a control polygon for your high-genus subdivision surface...
A template can be found on the Project Page.
The secret of a successful project completion is to make a schedule and set yourself some intermediate goals (so called "mile-stones").
Try to adhere to them.  If you are falling behind, take this as an early warning that you have to set your goals lower.
Focus on the relevant challenges.
(If your main task is inverse kinematics, we will not give you much credit for also texture mapping your animated creature.)


Reading Assignments:

Shirley:  2nd Ed: Ch.19.1 - 19.2; Ch.23
               3rd Ed: Ch.20.1 - 20.2; Ch.24


CS 184 Course Project:   Consult Project Page!
AS#11: Revise your project proposal; clarify technical challenges.
Show some evidence (a picture)  that serious programming has started.
Every participant must have a link to a (shared) proposal on their web page.

Due Saturday April 23, 11pm  (worth another 10% of project grade).



PREVIOUS < - - - - > CS 184 HOME < - - - - > CURRENT < - - - - > NEXT
Page Editor: Carlo H. Séquin