CMSC 740 Advanced Graphcis

posted in: Graduate, PostMS | 0

CMSC 740 Fall 2017 is taught by an awesome teacher Prof. Matthias Zwicker


The course project is based on Nori, an educational ray tracer.



Acceleration structures,

Uniform grid


Object subdivision

Bounding volume hierarchies (BVHs)

Partition space into non-overlapping cells

Each cell stores reference to all objects

that overlap it

Spatial subdivision

Binary space partitioning (BSP) trees

Recursively divide space into two parts using

dividing planes (with arbitrary position,


k-d-trees, nearest neighbor search


Light Transport Effects



Thin film interference:




Rayleigh Scattering: (Subsurface Scattering)




Quantify spatial energy distribution of light

 (in a way that is compatible with the geometrical optics model)

Physical measurement of electromagnetic energy

Unit: Watts

Assume light consists of photons with

Position x

Direction of motion w

Wavelength lambda

Each photo has an energy of hv

H Planck’s constant

V = 1 / lambda frequency

Measuring energy means “counting photons”

Spectral Radiance

Energy per time per wavelength per solid angle per area

 means differetial area perpendicular to


Power carried along a ray is measured in radiance

Radiance along ray is constant (in vacuum)

In practice: assume steady state, measure at discrete wavelengths R, G, B

Radiance L: power per solid angle per area, vector of 3 values for R, G, B

Irradiance: Power per unit area

Integration of radiance over hemisphere

Irradiance E: power per area perpendicular to the surface normal

Radiance L: power per area perpendicular to the incident ray \omega


When we do ray tracing, we use radiance for rays


Integration in spherical coordinates


Radiant intensity I in all direction, has a total power




Perceptual measurement of perceived brightness




Leave a Reply