A breadth-first approach to efficient mesh traversal

Complex 3D polygonal models are typically represented as triangular meshes, especially when they are generated procedurally, or created from volumetric data sets through surface extraction. Existing 3D rendering hardware, on the other hand, processes one triangle at a time. Therefore triangle meshes need to be converted to individual triangles when they are fed to the graphics pipeline. The design goal of such conversion algorithms is to minimize the number of vertices that are sent redundantly to the rendering pipeline. This paper proposes a breadth-first approach to traverse triangle meshes that reduces vertex redundancy to very close to the theoretical minimum. With the proposed scheme, no triangle vertices need to be specified multiple times, barring exceptional cases. In addition, owing to a prefetching technique, the on-chip storage requirement for effective mesh traversal remains small and largely constant regardless of the mesh size. Our experimental results show that assuming a 64-vertex buffer, the redundant transformation overhead associated with the proposed approach is between 1.00% and 7.330/o, for a set of 8 triangle meshes whose size ranges from 2,992 to 40,000 triangles.

[1]  Henry Fuchs,et al.  A sorting classification of parallel rendering , 1994, IEEE Computer Graphics and Applications.

[2]  Christian Sohler,et al.  Encoding a triangulation as a permutation of its point set , 1997, CCCG.

[3]  Gabriel Taubin,et al.  Geometric compression through topological surgery , 1998, TOGS.

[4]  Tzi-cker Chiueh Heresy: a virtual image-space 3D rasterization architecture , 1997, HWWS '97.

[5]  Bettina Speckmann,et al.  Easy triangle strips for TIN terrain models , 2001, CCCG.

[6]  Reuven Bar-Yehuda,et al.  Time/space tradeoffs for polygon mesh rendering , 1996, TOGS.

[7]  Michael Deering,et al.  Geometry compression , 1995, SIGGRAPH.

[8]  Mike M. Chow,et al.  Optimized geometry compression for real-time rendering , 1997, Proceedings. Visualization '97 (Cat. No. 97CB36155).

[9]  Steven Skiena,et al.  Optimizing triangle strips for fast rendering , 1996, Proceedings of Seventh Annual IEEE Visualization '96.

[10]  Tom R. Halfhill Beyond Pentium II , 1997 .