This Article 
 Bibliographic References 
 Add to: 
An Improved Vertex Caching Scheme for 3D Mesh Rendering
July/August 2006 (vol. 12 no. 4)
pp. 640-648

Abstract—Modern graphics cards are equipped with a vertex cache to reduce the amount of data needing to be transmitted to the graphics pipeline during rendering. To make effective use of the cache and facilitate rendering, it is key to represent a mesh in a manner that maximizes the cache hit rate. In this work, we propose a simple yet effective algorithm for generating a sequence for efficient rendering of 3D polygonal meshes based on greedy optimization. The algorithm outperforms the current state-of-the-art algorithms in terms of rendering efficiency of the resultant sequence. We also adapt it for the rendering of progressive meshes. For any simplified version of the original mesh, the rendering sequence is generated by adaptively updating the reordered sequence at full resolution. The resultant rendering sequence is cheap to compute and has reasonably good rendering performance, which is desirable to many complex rendering environments involving continuous rendering of meshes at various level of details. The experimental results on a collection of 3D meshes are provided.

[1] M. Levoy, “The Digital Michelangelo Project,” Computer Graphics Forum, vol. 18, no. 3, pp. 13-16, 1999.
[2] M. Deering, “Geometry Compression,” Proc. 22nd Ann. Conf. Computer Graphics and Interactive Techniques, 1999.
[3] M.M. Chow, “Optimized Geometry Compression for Real-Time Rendering,” Proc. Eighth Conf. Visualization, 1997.
[4] J. Neider et al., OpenGL Programming Guide: The Official Guide to Learning OpenGL, release 1. Addison-Wesley, 1993.
[5] M.B. Dillencourt, “Finding Hamiltonian Cycles in Delaunay Triangulations is NP-Complete,” Discrete Applied Math., vol. 64, no. 3, pp. 207-217, 1996.
[6] R. Estkowski, J.S. B. Mitchell, and X. Xiang, “Optimal Decomposition of Polygonal Models into Triangle Strips,” Proc. 18th Ann. Symp. Computational Geometry, 2002.
[7] F. Evans, S. Skiena, and A. Varshney, “Optimizing Triangle Strips for Fast Rendering,” Proc. Seventh Conf. Visualization, 1996.
[8] H. Hoppe, “Optimization of Mesh Locality for Transparent Vertex Caching,” Proc. 26th Ann. Conf. Computer Graphics and Interactive Techniques, 1999.
[9] X. Xiang, M. Held, and J. Mitchell, “Fast and Effective Stripification of Polygon Surface Models,” Proc. Symp. Interative 3D Graphics, 1999.
[10] P. Diaz-Gutierrez et al., “Constrained Strip Generation and Management for Efficient Interactive 3D Rendering,” Proc. Computer Graphics Int'l Conf. (CGI), 2005.
[11] A. Bogomjakov and C. Gotsman, “Universal Rendering Sequences for Transparent Vertex Caching of Progressive Meshes,” Computer Graphics Forum, vol. 21, no. 2, pp. 137-148, 2002.
[12] Y. Zhu, “Uniform Remeshing with an Adaptive Domain: A New Scheme for View-Dependent Level-of-Detail Rendering of Meshes,” IEEE Trans. Visualization and Computer Graphics, vol. 11, no. 3, pp. 306-316, May-June 2005.
[13] Z. Karni, A. Bogomjakov, and C. Gotsman, “Efficient Compression and Rendering of Multi-Resolution Meshes,” Proc. Conf. Visualization, 2002.
[14] G. Lin and T.P. Yu, “Greedy Algorithms for Rendering Sequence Generation of Triangle Meshes for Controllable and FIFO Cache Models,” manuscript, 2004.
[15] E. Cuthill and J. McKee, “Reducing the Bandwidth of Sparse Symmetric Matrices,” Proc. 1969 24th Nat'l ACM Conf., 1969.
[16] P. Alliez and M. Desbrun, “Valence-Driven Connectivity Encoding for 3D Meshes,” Proc. Eurographics Conf., 2001.
[17] S. Sloan, “An Algorithm for Profile and Wavefront Reduction of Sparse Matrices,” Int'l J. Numerical Methods Eng., vol. 23, pp. 1315-1324, 1986.
[18] W.J. Schroeder, J.A. Zarge, and W.E. Lorensen, “Decimation of Triangle Meshes,” Proc. 19th Ann. Conf. Computer Graphics and Interactive Techniques, 1992.
[19] H. Hoppe, “Progressive Meshes,” Proc. 23rd Ann. Conf. Computer Graphics and Interactive Techniques, 1996.
[20] M.-E. Algorri and F. Schmitt, “Mesh Simplification,” Proc. Eurographics Conf., 1996.
[21] R. Ronfard, J. Rossignac, and J. Rossignac, “Full-Range Approximation of Triangulated Polyhedra,” Proc. Eurographics Conf., 1996.
[22] A.D. Kalvin and R.H. Taylor, “Superfaces: Polygonal Mesh Simplification with Bounded Error,” IEEE Computer Graphics and Applications, vol. 16, no. 3, pp. 64-77, May 1996.
[23] N. Gibbs, W.J. Poole, and P. Stockmeyer, “An Algorithm for Reducing the Bandwidth and Profile of a Sparse Matrix,” SIAM J. Numerical Analysis, vol. 18, no. 2, pp. 235-251, 1976.
[24] J. Diaz, J. Petit, and M. Serna, “A Survey of Graph Layout Problems,” ACM Computing Surveys, vol. 34, no. 3, pp. 313-356, 2002.

Index Terms:
Polygon mesh, rendering sequence, vertex cache, progressive mesh, efficient rendering.
Gang Lin, Thomas P.-Y. Yu, "An Improved Vertex Caching Scheme for 3D Mesh Rendering," IEEE Transactions on Visualization and Computer Graphics, vol. 12, no. 4, pp. 640-648, July-Aug. 2006, doi:10.1109/TVCG.2006.59
Usage of this product signifies your acceptance of the Terms of Use.