Hierarchical back-face computation

Abstract We present a sub-linear algorithm to compute the set of back-facing polygons in a polyhedral model. The algorithm partitions the model into hierarchical clusters based on the orientations and positions of the polygons. As a pre-processing step, the algorithm constructs spatial decompositions with respect to each cluster. For a sequence of back-face computations, the algorithm exploits the coherence in view-point movement to efficiently determine whether it is in front of or behind a cluster. Due to coherence, the algorithm's expected running time is linear in the number of clusters on average. We have applied this algorithm to speed up the rendering of polyhedral models. On average, we are able to cull about 40% of the polygons. The algorithm accounts for 5% of the total CPU time per frame on an SGI Onyx. The overall frame rate is improved by 40–75% as compared to the standard back-face culling implemented in hardware. We also present an extension of our back-face computation algorithm to determine silhouettes of polygonal models. Our technique finds true perspective silhouettes by collecting edges at the common boundaries of back-facing and front-facing clusters.

[1]  Salim S. Abi-Ezzi,et al.  The Cone of Normals Technique for Fast Processing of Curved Patches , 1993, Comput. Graph. Forum.

[2]  James H. Clark,et al.  Hierarchical geometric models for visible surface algorithms , 1976, CACM.

[3]  David G. Kirkpatrick,et al.  Fast Detection of Polyhedral Intersection , 1983, Theor. Comput. Sci..

[4]  Frédo Durand,et al.  The Visibility Complex made Visibly Simple , 1995 .

[5]  David G. Kirkpatrick,et al.  Fast Detection of Polyhedral Intersections , 1982, ICALP.

[6]  Dinesh Manocha,et al.  Hierarchical Visibility Culling for Spline Models , 1995, Graphics Interface.

[7]  Raimund Seidel,et al.  Efficiently Computing And Representing Aspect Graphs Of Polyhedral Objects , 1988, [1988 Proceedings] Second International Conference on Computer Vision.

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

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

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

[11]  Turner Whitted,et al.  A 3-dimensional representation for fast rendering of complex scenes , 1980, SIGGRAPH '80.

[12]  Raimund Seidel,et al.  Linear programming and convex hulls made easy , 1990, SCG '90.

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

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

[15]  Seth J. Teller,et al.  Temporally coherent conservative visibility , 1999, Comput. Geom..

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

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

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

[19]  William J. Bouma,et al.  Velocity-based Collision Detection , 1995 .

[20]  David P. Dobkin,et al.  The quickhull algorithm for convex hulls , 1996, TOMS.

[21]  Raimund Seidel,et al.  Efficiently Computing and Representing Aspect Graphs of Polyhedral Objects , 1991, IEEE Trans. Pattern Anal. Mach. Intell..

[22]  Anselmo Lastra,et al.  Interactive display of large-scale NURBS models , 1995, I3D '95.

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

[24]  R. Schmacher,et al.  Study for Applying Computer-Generated Images to Visual Simulation: (510842009-001) , 1969 .

[25]  Frédo Durand,et al.  The visibility complex made visibly simple: an introduction to 2D structures of visibility , 1995, SCG '95.

[26]  V. Leitáo,et al.  Computer Graphics: Principles and Practice , 1995 .

[27]  Andrew S. Glassner,et al.  Graphics Gems , 1990 .

[28]  Franco P. Preparata,et al.  Computational Geometry , 1985, Texts and Monographs in Computer Science.

[29]  Robert L. Grossman,et al.  Visibility with a moving point of view , 1994, SODA '90.

[30]  Seth J. Teller,et al.  Global visibility algorithms for illumination computations , 1993, SIGGRAPH.

[31]  Steven L. Tanimoto A graph-theoretic real-time visible surface editing technique , 1977, SIGGRAPH '77.