Subscribe
Issue No.02 - March/April (2010 vol.16)
pp: 273-286
Tae-Joon Kim , Korea Advanced Institute of Science and Technology, Daejeon
Bochang Moon , Korea Advanced Institute of Science and Technology, Daejeon
Duksu Kim , Korea Advanced Institute of Science and Technology, Daejeon
Sung-Eui Yoon , Korea Advanced Institute of Science and Technology, Daejeon
ABSTRACT
We present a novel compressed bounding volume hierarchy (BVH) representation, random-accessible compressed bounding volume hierarchies (RACBVHs), for various applications requiring random access on BVHs of massive models. Our RACBVH representation is compact and transparently supports random access on the compressed BVHs without decompressing the whole BVH. To support random access on our compressed BVHs, we decompose a BVH into a set of clusters. Each cluster contains consecutive bounding volume (BV) nodes in the original layout of the BVH. Also, each cluster is compressed separately from other clusters and serves as an access point to the RACBVH representation. We provide the general BVH access API to transparently access our RACBVH representation. At runtime, our decompression framework is guaranteed to provide correct BV nodes without decompressing the whole BVH. Also, our method is extended to support parallel random access that can utilize the multicore CPU architecture. Our method can achieve up to a 12:1 compression ratio, and more importantly, can decompress 4.2 M BV nodes ({=}135 {\rm MB}) per second by using a single CPU-core. To highlight the benefits of our approach, we apply our method to two different applications: ray tracing and collision detection. We can improve the runtime performance by more than a factor of 4 as compared to using the uncompressed original data. This improvement is a result of the fast decompression performance and reduced data access time by selectively fetching and decompressing small regions of the compressed BVHs requested by applications.
INDEX TERMS
Hierarchy and BVH compression, random access, cache-coherent layouts, ray tracing, collision detection.
CITATION
Tae-Joon Kim, Bochang Moon, Duksu Kim, Sung-Eui Yoon, "RACBVHs: Random-Accessible Compressed Bounding Volume Hierarchies", IEEE Transactions on Visualization & Computer Graphics, vol.16, no. 2, pp. 273-286, March/April 2010, doi:10.1109/TVCG.2009.71
REFERENCES
 [1] J.L. Hennessy, D.A. Patterson, and D. Goldberg, Computer Architecture, A Quantitative Approach. Morgan Kaufmann, 2007. [2] S.M. Rubin and T. Whitted, “A 3-Dimensional Representation for Fast Rendering of Complex Scenes,” Computer Graphics, vol. 14, no. 3, pp. 110-116, 1980. [3] M. Lin and D. Manocha, “Collision and Proximity Queries,” Handbook of Discrete and Computational Geometry, 2003. [4] M. Teschner, S. Kimmerle, B. Heidelberger, G. Zachmann, L. Raghupathi, A. Fuhrmann, M.-P. Cani, F. Faure, N. Magnenat-Thalmann, W. Strasser, and P. Volino, “Collision Detection for Deformable Objects,” Computer Graphics Forum, vol. 19, no. 1, pp.61-81, 2005. [5] P.M. Hubbard, “Interactive Collision Detection,” Proc. IEEE Symp. Research Frontiers in Virtual Reality, pp. 24-31, 1993. [6] G. van den Bergen, “Efficient Collision Detection of Complex Deformable Models Using AABB Trees,” J. Graphics Tools, vol. 2, no. 4, pp. 1-13, 1997. [7] S. Gottschalk, M. Lin, and D. Manocha, “OBB-Tree: A Hierarchical Structure for Rapid Interference Detection,” Proc. ACM SIGGRAPH, pp. 171-180, 1996. [8] J. Klosowski, M. Held, J. Mitchell, H. Sowizral, and K. Zikan, “Efficient Collision Detection Using Bounding Volume Hierarchies of k-dops,” IEEE Trans. Visualization and Computer Graphics, vol. 4, no. 1, pp. 21-36, Jan.-Mar. 1998. [9] I. Wald, “Realtime Ray Tracing and Interactive Global Illumination,” PhD dissertation, Computer Graphics Group, Saarland Univ., 2004. [10] P. Alliez and C. Gotsman, “Recent Advances in Compression of 3D Meshes,” Advances in Multiresolution for Geometric Modelling, pp. 3-26, 2004. [11] C. Gotsman, S. Gumhold, and L. Kobbelt, “Simplification and Compression of 3D Meshes,” Tutorials on Multiresolution in Geometric Modelling, pp. 319-361, Springer, 2002. [12] C. Touma and C. Gotsman, “Triangle Mesh Compression,” Proc. Conf. Graphics Interface, pp. 26-34, 1998. [13] O. Devillers and P.-M. Gandoin, “Geometric Compression for Interactive Transmission,” Proc. IEEE Conf. Visualization, pp. 319-326, 2000. [14] J. Peng and C.-C.J. Kuo, “Geometry-Guided Progressive Lossless 3D Mesh Coding with octree (OT) Decomposition,” ACM Trans. Graphics, vol. 24, no. 3, pp. 609-616, 2005. [15] P. Alliez and M. Desbrun, “Valence-Driven Connectivity Encoding for 3D Meshes,” Proc. Conf. Eurographics, pp. 480-489, 2001. [16] F. Kälberer, K. Polthier, U. Reitebuch, and M. Wardetzky, “Freelence—Coding with Free Valences,” Computer Graphics Forum, vol. 24, no. 3, pp. 469-478, 2005. [17] M. Isenburg and J. Snoeyink, “Face Fixer: Compressing Polygon Meshes with Properties,” Proc. ACM SIGGRAPH, pp. 263-270, 2000. [18] S. Gumhold and W. Strasser, “Real Time Compression of Triangle Mesh Connectivity,” Proc. ACM SIGGRAPH, pp. 133-140, 1998. [19] J. Rossignac, “Edgebreaker: Connectivity Compression for Triangle Meshes,” IEEE Trans. Visualization and Computer Graphics, vol. 5, no. 1, pp. 47-61, Jan.-Mar. 1999. [20] H. Lee, P. Alliez, and M. Desbrun, “Angle-Analyzer: A Triangle-Quad Mesh Codec,” Computer Graphics Forum, vol. 21, pp. 383-392, 2002. [21] S. Choe, J. Kim, H. Lee, S. Lee, and H.-P. Seidel, “Mesh Compression with Random Accessibility,” Proc. Israel-Korea Bi-Nat'l Conf., pp. 81-86, 2004. [22] S. Choe, J. Kim, H. Lee, and S. Lee, “Random Accessible Mesh Compression Using Mesh Chartification,” IEEE Trans. Visualization and Computer Graphics, vol. 15, no. 1, pp. 160-173, Jan./Feb. 2009. [23] S.-E. Yoon and P. Lindstrom, “Random-Accessible Compressed Triangle Meshes,” IEEE Trans. Visualization and Computer Graphics, vol. 13, no. 6, pp. 1536-1543, Nov./Dec. 2007. [24] E. Gobbetti, F. Marton, P. Cignoni, M. Di Benedetto, and F. Ganovelli, “C-bdam—Compressed Batched Dynamic Adaptive Meshes for Terrain Rendering,” Computer Graphics Forum, vol. 25, no. 3, pp. 333-342, 2006. [25] J. Kim, S. Choe, and S. Lee, “Multiresolution Random Accessible Mesh Compression,” Proc. Conf. Eurographics, vol. 25, no. 3, pp.323-332, 2006. [26] D.L. Gall, “Mpeg: A Video Compression Standard for Multimedia Applications,” Comm. ACM, vol. 34, pp. 46-58, 1991. [27] I. Ihm and S. Park, “Wavelet-Based 3D Compression Scheme for Interactive Visualization of Very Large Volume Data,” Computer Graphics Forum, vol. 18, no. 1, pp. 3-15, 1999. [28] F. Rodler, “Wavelet Based 3D Compression with Fast Random Access for Very Large Volume Data,” Proc. Pacific Conf. Computer Graphics and Applications, pp. 108-117, 1999. [29] S. Lefebvre and H. Hoppe, “Perfect Spatial Hashing,” Proc. ACM SIGGRAPH, pp. 579-588, 2006. [30] J. Katajainen and E. Makinen, “Tree Compression and Optimization with Applications,” Int'l J. Foundations of Computer Science, vol. 1, no. 4, pp. 425-447, 1990. [31] S. Zaks, “Lexicographic Generation of Ordered Trees,” Theoretical Computer Science, vol. 10, pp. 63-82, 1980. [32] D. Zerling, “Generating Binary Trees Using Rotations,” J. ACM, vol. 32, no. 3, pp. 694-701, 1985. [33] A. Gersho and R.M. Gray, Vector Quantization and Signal Compression. Kluwer Academic Publishers, 1991. [34] D. Cline, K. Steele, and P.K. Egbert, “Lightweight Bounding Volumes for Ray Tracing,” J. Graphics Tools, vol. 11, no. 4, pp. 61-71, 2006. [35] J. Mahovsky, “Ray Tracing with Reduced-Precision Bounding Volume Hierarchies,” PhD thesis, Univ. of Calgary, 2005. [36] P. Terdiman, “Opcode: Optimized Collision Detection,” http://www.codercorner.comOpcode.htm, 2003. [37] S. Rusinkiewicz and M. Levoy, “Qsplat: A Multiresolution Point Rendering System for Large Meshes,” Proc. ACM SIGGRAPH, pp.343-352, 2000. [38] E. Hubo, T. Mertens, T. Haber, and P. Bekaert, “The Quantized kd-Tree: Efficient Ray Tracing of Compressed Point Clouds,” Proc. IEEE Symp. Interactive Ray Tracing, pp. 105-113, 2006. [39] D. Salomon, Data Compression. Springer, 2007. [40] C. Lauterbach, S.-E. Yoon, and D. Manocha, “Ray-Strips: A Compact Mesh Representation for Interactive Ray Tracing,” Proc. IEEE/EG Symp. Interactive Ray Tracing, pp. 19-26, 2007. [41] C. Lauterbach, S.-E. Yoon, M. Tang, and D. Manocha, “ReduceM: Interactive and Memory Efficient Ray Tracing of Large Models,” Computer Graphics Forum, vol. 27, no. 4, pp. 1313-1321, 2008. [42] S. Lefebvre and H. Hoppe, “Compressed Random-Access Trees for Spatially Coherent Data,” Proc. Eurographics Symp. Rendering, pp. 339-349, 2007. [43] I. Wald, “On Fast Construction of SAH Based Bounding Volume Hierarchies,” Proc. EG/IEEE Symp. Interactive Ray Tracing, pp. 33-40, 2007. [44] I. Wald, S. Boulos, and P. Shirley, “Ray Tracing Deformable Scenes Using Dynamic Bounding Volume Hierarchies,” ACM Trans. Graphics, vol. 26, no. 1, p. 6, 2007. [45] L. Arge, G. Brodal, and R. Fagerberg, “Cache Oblivious Data Structures,” Handbook on Data Structures and Applications, 2004. [46] M. Isenburg and P. Lindstrom, “Streaming Meshes,” Proc. IEEE Conf. Visualization, pp. 231-238, 2005. [47] P. van Emde Boas, “Preserving Order in a Forest in Less Than Logarithmic Time and Linear Space,” Information Processing Letters, vol. 6, pp. 80-82, 1977. [48] S.-E. Yoon and D. Manocha, “Cache-Efficient Layouts of Bounding Volume Hierarchies,” Computer Graphics Forum, vol. 25, no. 3, pp.507-516, 2006. [49] C. Silva, Y.-J. Chiang, W. Correa, J. El-Sana, and P. Lindstrom, “Out-of-Core Algorithms for Scientific Visualization and Computer Graphics,” Proc. IEEE Conf. Visualization Course Notes, 2002. [50] M. Isenburg and S. Gumhold, “Out-of-Core Compression for Gigantic Polygon Meshes,” Proc. ACM SIGGRAPH, pp. 935-942, 2003. [51] S.-E. Yoon, D. Manocha, P. Lindstrom, and V. Pascucci, “Openccl,” http://gamma.cs.unc.edu/COLOpenCCL, 2005. [52] A. Moffat, R.M. Neal, and I.H. Witten, “Arithmetic Coding Revisited,” ACM Trans. Information Systems, vol. 16, no. 3, pp.256-294, 1998. [53] J. Klosowski, M. Held, J.S.B. Mitchell, K. Zikan, and H. Sowizral, “Efficient Collision Detection Using Bounding Volume Hierarchies of $k$ -DOPs,” IEEE Trans. Visualization and Computer Graphics, vol. 4, no. 1, pp. 21-36, Jan.-Mar. 1998. [54] A. Reshetov, A. Soupikov, and J. Hurley, “Multi-Level Ray Tracing Algorithm,” ACM Trans. Graphics, vol. 24, no. 3, pp.1176-1185, 2005. [55] C. Lauterbach, S. Yoon, D. Tuft, and D. Manocha, “RT-DEFORM: Interactive Ray Tracing of Dynamic Scenes Using BVHS,” Proc. IEEE Symp. Interactive Ray Tracing, pp. 39-45, 2006. [56] R.L. Cook, T. Porter, and L. Carpenter, “Distributed Ray Tracing,” Proc. ACM SIGGRAPH, pp. 137-145, 1984. [57] B. Mirtich and J. Canny, “Impulse-Based Simulation of Rigid Bodies,” Proc. Symp. Interactive 3D Graphics, pp. 181-188, 1995. [58] A. Silberschatz, P.B. Galvin, and G. Gagne, Operating System Concepts. Jon Wiley and Sons, 2003. [59] J. loup Gailly and M. Adler, “zlib,” http:/www.zlib.net, 2005. [60] L. Seiler, D. Carman, E. Sprangle, T. Forsyth, M. Abrash, P. Dubey, S. Junkins, A. Lake, J. Sugerman, R. Cavin, R. Espasa, E. Grochowski, T. Juan, and P. Hanrahan, “Larrabee: A Many-Core x86 Architecture for Visual Computing,” ACM Trans. Graphics, vol. 27, no. 3, pp. 1-15, 2008.