A Realistic Illumination Model for Clouds


Category: technical


Sang Yoon Lee
(primary contact author)
Electrical Engineering and Computer Science Department
The George Washington University
20101 Academic Way
Ashburn, VA 20147
Phone: (703) 729 -8246
Fax: (703) 729 -8251
email: sylee@seas.gwu.edu


Ken Musgrave
FractalWorlds.com
15724 Trapshire Ct.
Waterford, VA 20197-1002
Phone: (540) 882-4402
email: musgrave@fractalworlds.com






30-word summary


This sketch describes a model for realistic illumination of clouds combining highly detailed geometry and accurate single scattering computation, with approximate calculation of high albedo, anisotropic higher-order multiple scattering.





Abstract

A number of models for generating clouds have been presented in the computer graphics literature. The most commonly used methods are based on surface textures. [1, 2, 3] Although these methods can give very realistic effects, they are limited to certain view directions and/or distances. For instance, it is not possible to generate realistic back-lit clouds with these models. To overcome these limitations, some researchers have suggested techniques based on the accurate physics of illumination inside clouds. Jim Blinn [4] used a single scattering model to implement accurate scattering from the rings of Saturn. Ebert [5] presented volumetric model of clouds including Blinn's model. Kajiya and Von Herzen [6] generated cloud images and suggested a model for multiple scattering. As pointed out in [6], using single scattering to render clouds with a high albedo (e.g., clouds of water vapor) will produce the artifact of unrealistically dark shadows. The zonal method [7] was the first model to deal with the multiple scattering issue. This method is not correct for clouds, however, because it assumes isotropic scattering. The scattering in clouds is highly anisotropic, with strong forward and weaker back scattering. Max [8] proposed an efficient model for anisotropic multiple volume scattering. This model divides the volume into a regular grid of voxels. For each voxel, discrete propagation directions are used to approximate anisotropic scattering. The radiation from each voxel is propagated to neighboring voxels taking into account the directionality of scattering. One drawback of such voxel-based models is the lack of high-frequency detail in the cloud geometry. Generally, the number of voxels that can be used is severely limited, relative to the image pixel size, due to memory constraints.

This sketch proposes a solution to this problem. Musgrave [9] described a method for ray marching implicit hypertextures with accurate single scattering and adaptive level of detail. The step size of the ray march varies with distance and an error specified in screen space (e.g., one pixel). One can control the level of detail in the hypertexture model of cloud geometry to maintain high frequencies at or near the Nyquist limit for theoretically maximal image detail, without aliasing.

In multiple scattering, the first scattering is generally the strongest factor in the illumination. Thus, we should to compute it more accurately. Second and higher order scattering are relatively weak, compared to the first. The basic method we propose is to apply Musgrave's ray marching technique to calculate cloud geometry and first-order scattering, and Max's method to calculate second and higher order scattering.

Preliminary results are promising. Images can be seen at:
http://tangle.seas.gwu.edu/~sylee/cloud.html

References

[1] G. Y. Gardner, "Visual Simulation of Clouds," Computer Graphics, Vol. 19, No. 3 (1985) pp 297-303

[2] K. Perlin, "An image synthesizer," Computer Graphics, Vol. 19, No. 3 (1985) pp 287-296

[3] D. Ebert, F. K. Musgrave, D. Peachey, K. Perlin, and S. Worley, "Texturing and Modeling: A Procedural Approach," Academic Press, October 1994. ISBN 0-12-228760-6

[4] J. F. Blinn, "Light Reflection Functions for Simulation of Clouds and Dusty Surfaces," Computer Graphics, Vol. 16, No. 3 (1982) pp. 21-29

[5] D. Ebert, "Volumetric Procedural Implicit Functions: A Cloud is Born," ACM SIGGRAPH 97 Technical Sketches Program (1997)

[6] J. T. Kajiya, B. V. Herzen, "Ray tracing Volume Densities," Computer Graphics, Vol. 18, No. 3 (1984) pp. 165-174.

[7] H. E. Rushmeier, K. E. Torrance, "The Zonal Method for Calculating Light Intensities in The Presence of a Participating Medium," Computer Graphics, Vol. 21, No. 4 (1987) pp. 293-302

[8] N. Max, "Efficient Light Propagation for Multiple Anisotropic Volume Scattering," Proc. of the Fifth Eurographics Workshop on Rendering(1994) pp. 87-104

[9] F. K. Musgrave, "Quasi-Analytic Error-Bounded Ray Tracing of Procedural Height Fields," ACM SIGGRAPH 96 Technical Sketches Program (1996)