Abstract
Computation of physically-based shadows can be significantly accelerated by limiting computations into regions where penumbras appear. In this paper, we present a general penumbra detection method that efficiently bounds regions where penumbras occur in a shared projection plane of an area light source. We introduce a novel area filling operator, which allows effective and conservative area masking with respect to all viewpoints, i.e., sampling points within a planar polygonal light source. The area filling operator uses a point sprite rendering technique on a set of silhouette boundaries to create a penumbra mask, which is essentially a modified occlusion map. We show how to efficiently test the geometry and screen-space pixels against the penumbra mask. An important advantage of our method is that we can separate lit and umbra regions, and thus drive various soft shadow algorithms to focus their computational efforts into potential penumbras. Due to the relative simplicity of computations, penumbra masks can be efficiently generated with graphics hardware. As an example, we accelerate shadow map supersampling to demonstrate significant speedups that utilizations of penumbra masks provide.
Similar content being viewed by others
References
Agrawala, M., Ramamoorthi, R., Heirich, A., Moll, L.: Efficient image-based methods for rendering soft shadows. In: Proc. SIGGRAPH ’00, vol. 34, pp. 375–384 (2000)
Akenine-Möller, T., Assarsson, U.: Approximate soft shadows on arbitrary surfaces using penumbra wedges. In: Proc. Rendering Techniques 2002 (13th Eurographics Workshop on Rendering), pp. 309–318 (2002)
Akenine-Möller, T., Haines, E.: Real-Time Rendering, 2nd edition. A.K. Peters, Natick, MA (2002)
Arvo, J.: The penumbra mask and its application to physically-based shadows. Tech. Rep. TR-709, ISBN 952-12-1601-8, TUCS (2005)
Arvo, J.: Alias-free shadow maps using graphics hardware. J. Graphics Tools (conditionally accepted for publication)
Arvo, J., Hirvikorpi, M., Tyystjärvi, J.: Approximate soft shadows using image-space flood-fill algorithm. Comput. Graph. Forum 23(3), 271–280 (2004)
Arvo, J., Westerholm, J.: Hardware accelerated soft shadows using penumbra quads. J. WSCG 12(1), 11–18 (2004)
Assarsson, U., Akenine-Möller, T.: A geometry-based soft shadow volume algorithm using graphics hardware. ACM Trans. on Graph. 22(3), 511–520 (2003)
Canny, J.: A computational approach to edge detection. IEEE Trans. Patt. Anal. Mach. Intell. 8(6), 679–698 (1986)
Chan, E., Durand, F.: An efficient hybrid shadow rendering algorithm. In: Proceedings of the Eurographics Symposium on Rendering, pp. 185–195. Eurographics Association (2004)
Chin, N., Feiner, S.: Fast object-precision shadow generation for area light source using bsp trees. In: ACM Symposium on Interactive 3D Graphics, pp. 21–30. ACM Press (1992)
Cook, R.L., Porter, T., Carpenter, L.: Distributed ray tracing. In: Proc. SIGGRAPH ’84, pp. 137–145 (1984)
Crow, F.: Shadow algorithms for computer graphics. In: Proc. SIGGRAPH ’77, pp. 242–248 (1977)
Durand, F., Drettakis, G., Puech, C.: The visibility skeleton: a powerful and efficient multi-purpose global visibility tool. In: Proc. SIGGRAPH’97, pp. 89–100 (1997). DOI http://doi.acm.org/10.1145/258734.258785
Durand, F., Drettakis, G., Thollot, J., Puech, C.: Conservative visibility preprocessing using extended projections. In: Proc. SIGGRAPH ’00, pp. 239–248 (2000)
Formella, A., Lukaszewski, A.: Fast penumbra calculation in ray tracing. In: WSCG’98 Conference Proceedings, pp. 238–245 (1998)
Greene, N., Kass, M., Miller, G.: Hierarchical z-buffer visibility. In: Proc. SIGGRAPH ’93, pp. 231–238 (1993)
Hart, D., Dutré, P., Greenberg, D.P.: Direct illumination with lazy visibility evaluation. In: Proc. SIGGRAPH ’99, pp. 147–154 (1999)
Hasenfratz, J.M., Lapierre, M., Holzschuch, N., Sillion, F.: A survey of real-time soft shadow algorithms. Comput. Graph. Forum 22(4) (2003). (Eurographics’03 State-of-the-Art Report)
Hasselgren, J., Akenine-Möller, T., Ohlsson, L.: Conservative Rasterization on the GPU. GPU GEMS II, pp. 677-690. Addison-Wesley Professional, Boston, MA (2005)
Heckbert, P.S.: Discontinuity meshing for radiosity. In: Third Eurographics Workshop on Rendering, pp. 203–226 (1992)
Lischinski, D., Tampieri, F., Greenberg, D.P.: Discontinuity meshing for accurate radiosity. IEEE Comput. Graph. Applic. 12(6), 25–39 (1992). DOI http://dx.doi.org/10.1109/38.163622
McCool, M.D.: Shadow volume reconstruction from depth maps. ACM Trans. on Graph. 19(1), 1–26 (2000)
Mitchell, J.L., Ansari, M.Y., Hart, E.: Advanced Image Processing with DirectX9 Pixel Shaders. In: ShaderX2. Wordware Publishing, Plano, TX (2004)
Nishita, T., Nakamae, E.: Continuous tone representation of three-dimensional objects taking account of shadows and interreflection. In: Proc. SIGGRAPH ’85, pp. 23–30 (1985)
Shapiro, L., Badler, N.I.: Generating soft shadows with a depth buffer algorithm. IEEE Comput. Graph. Applic. 4(10), 5–24 (1984). DOI http://dx.doi.org/10.1109/38.163622
Shirley, P., Wang, C., Zimmerman, K.: Monte carlo techniques for direct lighting calculations. ACM Trans. on Graph. 15(1), 1–36 (1996). DOI http://doi.acm.org/10.1145/226150.226151
Soler, C., Sillion, F.: Fast calculation of soft shadow textures using convolution. In: Proc. SIGGRAPH ’98, pp. 321–332 (1998)
Tanaka, T., Takahashi, T.: Fast analytic shading and shadowing for area light sources. Comput. Graph. Forum 16(3), 231–240 (1997)
Williams, L.: Casting curved shadows on curved surfaces. In: Proc. SIGGRAPH ’78, pp. 270–274 (1978)
Woo, A., Poulin, P., Fournier, A.: A survey of shadow algorithms. IEEE Comput. Graph. Applic. 10(6), 13–32 (1990)
Zhang, H., Manocha, D., Hudson, T., III, K.E.H.: Visibility culling using hierarchical occlusion maps. In: Proc. SIGGRAPH ’97, pp. 77–88 (1997)
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Arvo, J. Penumbra masks. Visual Comput 22, 1–13 (2006). https://doi.org/10.1007/s00371-006-0378-7
Published:
Issue Date:
DOI: https://doi.org/10.1007/s00371-006-0378-7