We are interested in analyzing and rendering the visual effects due to scattering of light by participating media such as fog, mist and haze. While a number of sophisticated approaches based on Monte Carlo and finite element simulation have been developed, these approaches are computationally very expensive. In the context of rendering, the most common real-time methods are essentially simple variants of the OpenGL fog model. While easy to use and specify, the OpenGL fog model excludes many important qualitative effects like glows around light sources, the effect of volumetric scattering on the appearance of surfaces such as the diffusing of glossy highlights and the appearance of objects under complex lighting such as environment maps. In this project, we have developed a new physically based model for single scattering that captures these effects while maintaining the real-time performance and the ease-of-use of the OpenGL fog model. Our model is based on an explicit analytic integration of the single scattering light transport equations for an isotropic point light source in a homogeneous participating medium. We have implemented the model in modern programmable graphics hardware using a few small numerical lookup tables stored as texture maps. Our model can also be easily adapted to generate the appearances of materials with arbitrary BRDFs, environment map lighting and pre-computed radiance transfer methods, in the presence of participating media. This project is done in collaboration with Ravi Ramamoorthi at Columbia University and Srinivasa Narasimhan at Carnegie Mellon University.

Publications