specular cow from my cs123 raytracer. like a ball bearing on a checkerboard, except a cow instead. an unusual number of teenagers like deep linking this image into their myspace profile backgrounds. fortunately they don't have any friends so it doesn't really cost my bandwidth.
obligatory cs224 metropolis light transport rendered table. if i'd let it run longer it would have looked better.
the next few pictures are from my cs224 group project. we ({ahp|ekern|jdfunaro|roth}@cs.brown.edu) implemented Fedkiw's smoke simulation siggraph paper; my section was the volumetric photon map renderer. the full "pipeline" here consists of:
  • voxelizing the scene (i.e. determining which voxels of the region of smoke simulation are occupied by objects in the scene, in this case the tori)
  • running the smoke simulator, which produces a 3D tiff of the smoke density for each frame of the animation
  • running the photonmap renderer with each 3D tiff and combining all the output images into a movie.

simulated smoke rising through two tori. (divx movie)
various shapes rendered using only the photon map. shows indirect illumination and color bleeding pretty well. also shows how horrible the variance is in images rendered using only the photon map. in practice, the photon map is only used for caustics (which can't be raytraced) and as an approximation of radiance when the path contains at least one diffuse bounce.
first volume caustic success: point light -> glass ball -> box of smoke
photons are cast from the light, concentrated by the glass ball, absorbed by the smoke, and stored in the volumetric photon map. (which is stored in a KD-Tree) when ray-marching through the smoke, the rendered takes the proximal concentration of volumetric photons into account and thus is able to render the caustic.