skip to main content
research-article

Real-time smoke rendering using compensated ray marching

Published:01 August 2008Publication History
Skip Abstract Section

Abstract

We present a real-time algorithm called compensated ray marching for rendering of smoke under dynamic low-frequency environment lighting. Our approach is based on a decomposition of the input smoke animation, represented as a sequence of volumetric density fields, into a set of radial basis functions (RBFs) and a sequence of residual fields. To expedite rendering, the source radiance distribution within the smoke is computed from only the low-frequency RBF approximation of the density fields, since the high-frequency residuals have little impact on global illumination under low-frequency environment lighting. Furthermore, in computing source radiances the contributions from single and multiple scattering are evaluated at only the RBF centers and then approximated at other points in the volume using an RBF-based interpolation. A slice-based integration of these source radiances along each view ray is then performed to render the final image. The high-frequency residual fields, which are a critical component in the local appearance of smoke, are compensated back into the radiance integral during this ray march to generate images of high detail.

The runtime algorithm, which includes both light transfer simulation and ray marching, can be easily implemented on the GPU, and thus allows for real-time manipulation of viewpoint and lighting, as well as interactive editing of smoke attributes such as extinction cross section, scattering albedo, and phase function. Only moderate preprocessing time and storage is needed. This approach provides the first method for real-time smoke rendering that includes single and multiple scattering while generating results comparable in quality to offline algorithms like ray tracing.

Skip Supplemental Material Section

Supplemental Material

a36-zhou.mov

mov

17.9 MB

References

  1. Biri, V., Michelin, S., and Arquès, D., 2004. Real-time single scattering with shadows. http://igm.univmlv.fr/~biri/indexCA_en.html.Google ScholarGoogle Scholar
  2. Blinn, J. F. 1982. Light reflection functions for simulation of clouds and dusty surfaces. In ACM SIGGRAPH, 21--29. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. Bolz, J., Farmer, I., Grinspun, E., and Schröoder, P. 2003. Sparse matrix solvers on the GPU: conjugate gradients and multigrid. ACM Trans. Graph. 22, 3, 917--924. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Cerezo, E., Pérez, F., Pueyo, X., Serón, F. J., and Sillion, F. X. 2005. A survey on participating media rendering techniques. The Visual Computer 21, 5, 303--328.Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. Cohen-Steiner, D., Alliez, P., and Desbrun, M. 2004. Variational shape approximation. ACM Trans. Graph. 23, 3, 905--914. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Crane, K., Llamas, I., and Tariq, S. 2007. Real-time simulation and rendering of 3d fluids. GPU Gems 3, Chapter 30.Google ScholarGoogle Scholar
  7. Dobashi, Y., Kaneda, K., Yamashita, H., Okita, T., and Nishita, T. 2000. A simple, efficient method for realistic animation of clouds. In ACM SIGGRAPH, 19--28. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Ebert, D. S., and Parent, R. E. 1990. Rendering and animation of gaseous phenomena by combining fast volume and scanline a-buffer techniques. In ACM SIGGRAPH, 357--366. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Fedkiw, R., Stam, J., and Jensen, H. W. 2001. Visual simulation of smoke. In ACM SIGGRAPH, 15--22. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Geist, R., Rasche, K., Westall, J., and Schalkoff, R. J. 2004. Lattice-boltzmann lighting. In Rendering Techniques, 355--362. Google ScholarGoogle ScholarCross RefCross Ref
  11. Harris, M. J., and Lastra, A. 2001. Real-time cloud rendering. In Eurographics, 76--84.Google ScholarGoogle Scholar
  12. Hegeman, K., Ashikhmin, M., and Premoze, S. 2005. A lighting model for general participating media. In Symposium on Interactive 3D Graphics and Games, 117--124. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Jarosz, W., Donner, C., Zwicker, M., and Jensen, H. W. 2007. Radiance caching for participating media. In ACM SIGGRAPH 2007 Sketches. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Jensen, H. W., and Christensen, P. H. 1998. Efficient simulation of light transport in scences with participating media using photon maps. In ACM SIGGRAPH, 311--320. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Kajiya, J. T., and von Herzen, B. P. 1984. Ray tracing volume densities. In ACM SIGGRAPH, 165--174. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Kniss, J., Premoze, S., Hansen, C., Shirley, P., and McPherson, A. 2003. A model for volume lighting and modeling. IEEE Trans. Vis. Comp. Graph. 9, 2, 150--162. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Lafortune, E. P., and Willems, Y. D. 1996. Rendering participating media with bidirectional path tracing. In Eurographics Workshop on Rendering, 91--100. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Lefebvre, S., and Hoppe, H. 2006. Perfect spatial hashing. ACM Trans. Graph. 25, 3, 579--588. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Levoy, M. 1990. Efficient ray tracing of volume data. ACM Trans. Graph. 9, 3, 245--261. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Narasimhan, S. G., and Nayar, S. K. 2003. Shedding light on the weather. In IEEE Comp. Vision Patt. Rec., 665--672. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. NVIDIA, 2007. CUDA homepage. http://developer.nvidia.com/object/cuda.html.Google ScholarGoogle Scholar
  22. Premoze, S., Ashikhmin, M., Ramamoorthi, R., and Nayar, S. 2004. Practical rendering of multiple scattering effects in participating media. In Eurographics Symposium on Rendering, 363--374. Google ScholarGoogle ScholarCross RefCross Ref
  23. Ren, Z., Wang, R., Snyder, J., Zhou, K., Liu, X., Sun, B., Sloan, P.-P., Bao, H., Peng, Q., and Guo, B. 2006. Real-time soft shadows in dynamic scenes using spherical harmonic exponentiation. ACM Trans. Graph. 25, 3, 977--986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Riley, K., Ebert, D. S., Kraus, M., Tessendorf, J., and Hansen, C. 2004. Efficient rendering of atmospheric phenomena. In Eurographics Symposium on Rendering, 375--386. Google ScholarGoogle ScholarCross RefCross Ref
  25. Rushmeier, H. E., and Torrance, K. E. 1987. The zonal method for calculating light intensities in the presence of a participating medium. In ACM SIGGRAPH, 293--302. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Rushmeier, H. E. 1988. Realistic image synthesis for scenes with relatively participating media. PhD thesis, Cornell University. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Schpok, J., Simons, J., Ebert, D. S., and Hansen, C. 2003. A real-time cloud modeling, rendering, and animation system. In ACM SIGGRAPH/Eurographics Symp. Computer Animation, 160--166. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Sloan, P.-P., Kautz, J., and Snyder, J. 2002. Precomputed radiance transfer for real-time rendering in dynamic, low-frequency lighting environments. In ACM SIGGRAPH, 527--536. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Sloan, P., Luna, B., and Snyder, J. 2005. Local, deformable precomputed radiance transfer. ACM Trans. Graph. 24, 3, 1216--1224. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Stam, J., and Fiume, E. 1995. Depicting fire and other gaseous phenomena using diffusion processes. In ACM SIGGRAPH, 129--136. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Stam, J. 1994. Stochastic rendering of density fields. In Graphics Interface, 51--58.Google ScholarGoogle Scholar
  32. Stam, J. 1995. Multiple scattering as a diffusion process. In Eurographics Workshop on Rendering, 41--50.Google ScholarGoogle ScholarCross RefCross Ref
  33. Sun, B., Ramamoorthi, R., Narasimhan, S., and Nayar, S. 2005. A practical analytic single scattering model for real time rendering. ACM Trans. Graph. 24, 3, 1040--1049. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. Szirmay-Kalos, L., Sbert, M., and Ummenhoffer, T. 2005. Real-time multiple scattering in participating media with illumination networks. In Rendering Techniques, 277--282. Google ScholarGoogle ScholarCross RefCross Ref
  35. Zhou, K., Hou, Q., Gong, M., Snyder, J., Guo, B., and Shum, H.-Y. 2007. Fogshop: Real-time design and rendering of inhomogeneous, single-scattering media. In Pacific Graphics, 116--125. Google ScholarGoogle ScholarCross RefCross Ref
  36. Zhu, C., Byrd, R. H., Lu, P., and Nocedal, J. 1997. LBFGS-B: Fortran subroutines for large-scale bound constrained optimization. ACM Trans. Math. Softw. 23, 4, 550--560. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Real-time smoke rendering using compensated ray marching

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in

            Full Access

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader