Notes
Outline
CS 563 Advanced Topics in
Computer Graphics
Rendering Bubbles – Final Project
 by Charles Moidel
Goal
To accurately render thin film interference for bubbles using Andrew Glassner’s Soap Bubbles as a guide.
Approach
I decided to implement a spectral ray tracer to render bubble interference.
Advantages:
Full control of the rendering
Less complicated
Aren’t constrained to an SDK
Don’t have to learn about how the application/API represents a scene
Less distracting
Approach
Disadvantages
I’ve never written a ray tracer before
Possibly more code to write and debug
Has fewer cool features
To do
Implement the following:
1.  A simple ray tracer to render a sphere.
2.  A method/algorithm for converting spectral information to RGB.
3.  A spectral ray tracer to render a sphere at multiple wavelengths.
4.  A spectral ray tracer to render thin film interference on a sphere.
Initial Progress
More Progress
More Progress
 Final Results
Final Results
Final Results
References
Andrew Glassner, “Soap Bubbles” Parts I & II, IEEE Computer Graphics and Applications, (September 2000) (online1) (online2)
Yinlong Sun, “Deriving Spectra from Colors and Rendering Light Interference,” IEEE Computer Graphics and Applications, (August 1999) (online)
Code used in my project:
   Noise Function by Ken Perlin
   Spectral to XYZ code by Garrett Johnson