Visibility in Computer Graphics

Visibility computation was crucial for computer graphics from its very beginning. The first visibility algorithms in computer graphics aimed to determine visible surfaces in a synthesized image of a three-dimensional scene. Nowadays there are many different visibility algorithms for various visibility problems. We propose a new taxonomy of visibility problems that is based on a classification according to the problem domain. We provide a broad overview of visibility problems and algorithms in computer graphics grouped by the proposed taxonomy. We survey visible surface algorithms, visibility culling algorithms, visibility algorithms for shadow computation, global illumination, point-based and image-based rendering, and global visibility computations. Finally, we discuss common concepts of visibility algorithm design and several criteria for the classification of visibility algorithms.

[1]  Thomas Ertl,et al.  Computer Graphics - Principles and Practice, 3rd Edition , 2014 .

[2]  Seth J. Teller,et al.  Real-time occlusion culling for models with large occluders , 1997, SI3D.

[3]  Hans-Peter Seidel,et al.  Soft Shadow Maps for Linear Lights , 2000, Rendering Techniques.

[4]  Daniel Cohen-Or,et al.  Visibility and Dead‐Zones in Digital Terrain Maps , 1995, Comput. Graph. Forum.

[5]  George Drettakis,et al.  A fast shadow algorithm for area light sources using backprojection , 1994, SIGGRAPH.

[6]  Dani Lischinski,et al.  Discontinuity meshing for accurate radiosity , 1992, IEEE Computer Graphics and Applications.

[7]  Paul S. Heckbert,et al.  Simulating Soft Shadows with Graphics Hardware , 1997 .

[8]  Frédo Durand,et al.  The visibility skeleton: a powerful and efficient multi-purpose global visibility tool , 1997, SIGGRAPH.

[9]  Roni Yagel,et al.  Visibility Computation for Efficient Walkthrough of Complex Environments , 1996, Presence: Teleoperators & Virtual Environments.

[10]  A. James Stewart Hierarchical Visibility in Terrains , 1997, Rendering Techniques.

[11]  John Amanatides,et al.  Voxel occlusion testing: a shadow determination accelerator for ray tracing , 1990 .

[12]  Donald S. Fussell,et al.  Adaptive mesh generation for global diffuse illumination , 1990, SIGGRAPH.

[13]  Edwin H. Blake,et al.  Exact From-Region Visibility Culling , 2002, Rendering Techniques.

[14]  Yeong-Gil Shin,et al.  A Terrain Rendering Method Using Vertical Ray Coherence , 1997, Comput. Animat. Virtual Worlds.

[15]  James T. Kajiya,et al.  The rendering equation , 1986, SIGGRAPH.

[16]  Frédo Durand,et al.  A Survey of Visibility for Walkthrough Applications , 2003, IEEE Trans. Vis. Comput. Graph..

[17]  Daniel Cohen-Or,et al.  Hardware-Accelerated from-Region Visibility Using a Dual Ray Space , 2001, Rendering Techniques.

[18]  Martin E. Newell,et al.  A solution to the hidden surface problem , 1998 .

[19]  Peter R. Atherton,et al.  Hidden surface removal using polygon area sorting , 1977, SIGGRAPH.

[20]  Marc Levoy,et al.  Light field rendering , 1996, SIGGRAPH.

[21]  Pat Hanrahan,et al.  Beam tracing polygonal objects , 1984, SIGGRAPH.

[22]  Michael Wimmer,et al.  Visibility Preprocessing with Occluder Fusion for Urban Walkthroughs , 2000, Rendering Techniques.

[23]  Joseph O'Rourke,et al.  Handbook of Discrete and Computational Geometry, Second Edition , 1997 .

[24]  Werner Purgathofer,et al.  Real-Time Occlusion Culling with a Lazy Occlusion Grid , 2001, Rendering Techniques.

[25]  George Drettakis,et al.  Robust epsilon visibility , 2002, ACM Trans. Graph..

[26]  Dieter Schmalstieg,et al.  Occluder Shadows for Fast Walkthroughs of Urban Environments , 1999, Comput. Graph. Forum.

[27]  H. M. Uller,et al.  Hierarchical Blocker Trees for Global Visibility Calculation Hierarchical Blocker Trees for Global Visibility Calculation A , 1996 .

[28]  Stéphane Rivière,et al.  Dynamic visibility in polygonal scenes with the visibility complex , 1997, SCG '97.

[29]  M. Carter Computer graphics: Principles and practice , 1997 .

[30]  Markus Wagner,et al.  Interactive Rendering with Coherent Ray Tracing , 2001, Comput. Graph. Forum.

[31]  Richard Szeliski,et al.  The lumigraph , 1996, SIGGRAPH.

[32]  Franklin C. Crow,et al.  Shadow algorithms for computer graphics , 1977, SIGGRAPH.

[33]  Pierre Poulin,et al.  A survey of shadow algorithms , 1990, IEEE Computer Graphics and Applications.

[34]  Michael Wimmer,et al.  Visibility preprocessing for urban scenes using line space subdivision , 2001, Proceedings Ninth Pacific Conference on Computer Graphics and Applications. Pacific Graphics 2001.

[35]  Kellogg S. Booth,et al.  Report from the chair , 1986 .

[36]  James Arvo,et al.  Particle transport and image synthesis , 1990, SIGGRAPH.

[37]  John Edward Warnock,et al.  A hidden surface algorithm for computer generated halftone pictures , 1969 .

[38]  WhittedTurner An improved illumination model for shaded display , 1979 .

[39]  Gavin S. P. Miller,et al.  Hierarchical Z-buffer visibility , 1993, SIGGRAPH.

[40]  Seth J. Teller,et al.  Computing the antipenumbra of an area light source , 1992, SIGGRAPH.

[41]  John Amanatides,et al.  Ray tracing with cones , 1984, SIGGRAPH.

[42]  Turner Whitted,et al.  An improved illumination model for shaded display , 1979, CACM.

[43]  Dimitri Plemenos,et al.  Accurate Scene Display by Using Visibility Maps , 1999 .

[44]  John R. Wallace,et al.  A Ray tracing algorithm for progressive radiosity , 1989, SIGGRAPH '89.

[45]  Steven K. Feiner,et al.  Fast object-precision shadow generation for area light sources using BSP trees , 1992, I3D '92.

[46]  Joëlle Thollot,et al.  Conservative visibility preprocessing using extended projections , 2000, SIGGRAPH.

[47]  Arthur Appel,et al.  Some techniques for shading machine renderings of solids , 1968, AFIPS Spring Joint Computing Conference.

[48]  Carlo H. Séquin,et al.  Occlusion horizons for driving through urban scenery , 2001, I3D '01.

[49]  Matthias Zwicker,et al.  Surfels: surface elements as rendering primitives , 2000, SIGGRAPH.

[50]  Carlo H. Séquin,et al.  Visibility preprocessing for interactive walkthroughs , 1991, SIGGRAPH.

[51]  Pierre Poulin,et al.  Sampling Visibility in Three-Space , 1998 .

[52]  Charles R. Dyer,et al.  Real-time hidden-line elimination for a rotating polyhedral scene using the aspect representation , 1990 .

[53]  Jr. Leonard McMillan,et al.  An Image-Based Approach to Three-Dimensional Computer Graphics , 1997 .

[54]  Donald P. Greenberg,et al.  The hemi-cube: a radiosity solution for complex environments , 1985, SIGGRAPH.

[55]  Michel Pocchiola,et al.  The visibility complex , 1993, SCG '93.

[56]  Pat Hanrahan,et al.  Ray tracing on a connection machine , 1988, ICS '88.

[57]  Steven K. Feiner,et al.  Near real-time shadow generation using BSP trees , 1989, SIGGRAPH '89.

[58]  Shuhong Chen,et al.  Front-to-back display of BSP trees , 1991, IEEE Computer Graphics and Applications.

[59]  Mark de Berg,et al.  Computational geometry: algorithms and applications , 1997 .

[60]  Donald P. Greenberg,et al.  Modeling the interaction of light between diffuse surfaces , 1984, SIGGRAPH.

[61]  Dipl.-Ing,et al.  Real-time Rendering , 2022 .

[62]  George Drettakis,et al.  Perspective shadow maps , 2002, ACM Trans. Graph..

[63]  Marc Levoy,et al.  QSplat: a multiresolution point rendering system for large meshes , 2000, SIGGRAPH.

[64]  Xianfeng Gu,et al.  Polyhedral Geometry and the Two-Plane Parameterization , 1997, Rendering Techniques.

[65]  William J. Dally,et al.  Point Sample Rendering , 1998, Rendering Techniques.

[66]  Friedhelm Meyer auf der Heide,et al.  The randomized z-buffer algorithm: interactive rendering of highly complex scenes , 2001, SIGGRAPH.

[67]  Mel Slater,et al.  Shadow volume BSP trees for computation of shadows in dynamic scenes , 1995, I3D '95.

[68]  Frederick P. Brooks,et al.  Towards image realism with interactive update rates in complex virtual building environments , 1990, I3D '90.

[69]  Parris K. Egbert,et al.  Horizon occlusion culling for real-time rendering of hierarchical terrains , 2002, IEEE Visualization, 2002. VIS 2002..

[70]  Dinesh Manocha,et al.  Visibility culling using hierarchical occlusion maps , 1997, SIGGRAPH.

[71]  Dinesh Manocha,et al.  Accelerated occlusion culling using shadow frusta , 1997, SCG '97.

[72]  Steven K. Feiner,et al.  Computer Graphics - Principles and Practice, 3rd Edition , 1990 .

[73]  Lance Williams,et al.  Casting curved shadows on curved surfaces , 1978, SIGGRAPH.

[74]  Frédo Durand,et al.  3d visibility: analytical study and applications , 1999 .

[75]  Timo Aila,et al.  SurRender Umbra: A Visibility Determi-nation Framework for Dynamic Environments , 2000 .

[76]  A. James Stewart,et al.  Computing the Approximate Visibility map, with Applications to Form Factors and Discontinuity Meshing , 1998, Rendering Techniques.

[77]  Marco Pellegrini Ray Shooting and Lines in Space , 2004, Handbook of Discrete and Computational Geometry, 2nd Ed..

[78]  James Arvo,et al.  A survey of ray tracing acceleration techniques , 1989 .

[79]  Dani Lischinski,et al.  Fast approximate quantitative visibility for complex scenes , 1998, Proceedings. Computer Graphics International (Cat. No.98EX149).

[80]  Frédo Durand,et al.  The 3D Visibility Complex: A New Approach to the Problems of Accurate Visibility , 1996, Rendering Techniques.

[81]  Tomas Akenine-Möller,et al.  Real-time rendering , 1997 .

[82]  François X. Sillion,et al.  Conservative volumetric visibility with occluder fusion , 2000, SIGGRAPH.

[83]  Mel Slater,et al.  Incremental Updates to Scenes Illuminated by Area Light Sources , 1997, Rendering Techniques.

[84]  Vlastimil Havran,et al.  Heuristic ray shooting algorithms , 2000 .

[85]  Vlastimil Havran,et al.  Hierarchical visibility culling with occlusion trees , 1998, Proceedings. Computer Graphics International (Cat. No.98EX149).

[86]  Yeong Gil Shin,et al.  A Terrain Rendering Method Using Vertical Ray Coherence , 1997 .

[87]  Donald P. Greenberg,et al.  The Light Buffer: A Shadow-Testing Accelerator , 1986, IEEE Computer Graphics and Applications.

[88]  Craig Gotsman,et al.  Optimized occlusion culling using five-dimensional subdivision , 1999, Comput. Graph..

[89]  Seth Teller,et al.  Visibility Computations in Densely Occluded Polyhedral Environments , 1992 .

[90]  Jirí Bittner Efficient construction of visibility maps using approximate occlusion sweep , 2002, SCCG '02.

[91]  Martin E. Newell,et al.  A solution to the hidden surface problem , 1972, ACM Annual Conference.

[92]  David P. Luebke,et al.  Portals and mirrors: simple, fast evaluation of potentially visible sets , 1995, I3D '95.

[93]  A. James Stewart,et al.  Fast computation of shadow boundaries using spatial coherence and backprojections , 1994, SIGGRAPH.

[94]  Mark Segal,et al.  Fast shadows and lighting effects using texture mapping , 1992, SIGGRAPH.

[95]  Werner Purgathofer,et al.  Global Ray-Bundle Tracing with Hardware Acceleration , 1998, Rendering Techniques.

[96]  François X. Sillion,et al.  Fast calculation of soft shadow textures using convolution , 1998, SIGGRAPH.

[97]  Loren C. Carpenter,et al.  The A -buffer, an antialiased hidden surface method , 1984, SIGGRAPH.

[98]  Henry Gouraud,et al.  Computer Display of Curved Surfaces , 1971, Outstanding Dissertations in the Computer Sciences.

[99]  Bruce F. Naylor Partitioning tree image representation and generation from 3D geometric models , 1992 .

[100]  Cláudio T. Silva,et al.  Efficient Conservative Visibility Culling Using the Prioritized-Layered Projection Algorithm , 2001, IEEE Trans. Vis. Comput. Graph..

[101]  Thomas A. Funkhouser,et al.  A beam tracing approach to acoustic modeling for interactive virtual environments , 1998, SIGGRAPH.

[102]  Leila De Floriani,et al.  Horizon computation on a hierarchical triangulated terrain model , 2005, The Visual Computer.

[103]  Pere Brunet,et al.  The visibility octree: a data structure for 3D navigation , 1999, Comput. Graph..

[104]  Ji ˇ ´ Bittner,et al.  Hierarchical Techniques for Visibility Computations , 2002 .

[105]  Henry Fuchs,et al.  On visible surface generation by a priori tree structures , 1980, SIGGRAPH '80.

[106]  Gert Vegter,et al.  In handbook of discrete and computational geometry , 1997 .

[107]  Robert L. Cook,et al.  Distributed ray tracing , 1998 .