Browse > Article

An Efficient k-D tree Traversal Algorithm for Ray Tracing on a GPU  

Kang, Yoon-Sig (연세대학교 컴퓨터과학과)
Park, Woo-Chan (세종대학교 정보처리학과)
Seo, Choong-Won (연세대학교 컴퓨터과학과)
Yang, Sung-Bong (연세대학교 컴퓨터과학과)
Abstract
This paper proposes an effective k-D tree traversal algorithm for ray tracing on a GPU. The previous k-D tree traverse algorithm based on GPU uses bottom-up searching from a leaf to the root after failing to find the ray intersected primitive in the leaf node. During the bottom-up search the algorithm decides the current node is visited or not from the parent node. In such a way, we need to visit the parent node which was already visited and the duplicated bounding box intersection tests. The new k-D tree traverse algorithm reduces the brother and parent duplicated visit by using an efficient method which decides whether the brother node is already visited or not during the bottom-up search. Also the algorithm take place bounding box intersection tests only for the nodes which is not yet done. As a result our experiment shows the new algorithm is about 30% faster than the previous.
Keywords
3D Graphics; Ray Tracing; k-D Tree; GPU; Ray Shooting Algorithm; Backtrack Algorithm;
Citations & Related Records
연도 인용수 순위
  • Reference
1 M. Ernst, C. Vogelgsang, and G. Greiner, 'Stack implementation on programmable graphics hardware,' Vision Modeling and Visualization, pp. 255-262, 2004
2 F. W. Jason, 'Data structures for ray tracing,' Proceedings of the workshop on Data Structures for Raster Graphics, pp. 57-73, 1986
3 S. Parker, W. Martin, P.-P. J. Sloan, P. Shirley, B. Smits, and C. Hansen, 'Interactive ray tracing,' Proceedings of the 1999 symposium on Interactive 3D graphics, pp. 119-126, 1999
4 N. A. Carr, J. D. Hall, and J. C. Hart, 'The Ray Engine,' Tech. Rep. UIUCDCS-R-2002-2269, Department of Computer Science, University of Illinois, 2002
5 A. Nathan, D. Jesse, and C. John, 'The Ray Engine,' Proceedings of the ACM SIGGRAPH/EUROGRAPHICS conference on Graphics hardware, pp. 37-46, 2002
6 S. Popov, J. Gunther, H. P. Seidel, and P. Slusallek, 'Stackless KD-Tree Traversal for High Performance GPU Ray Tracing,' EUROGRAPHICS, Vol.10, No.1, 2007
7 J. L. Bentley, 'Multidimensional Binary Search Trees Used for Associative Searching,' Communications of the ACM, pp. 509-517, 1975
8 M. Pharr, and G. Humphreys, Physically Based Rendering: From Theory to Implementation. Morgan Kaufmann, 2004
9 J. D. MacDonald, and S. B. Kellogg, 'Heuristics for ray tracing using space subdivision,' The Visual Computer, 1990
10 I. Buck, T. Foley, D. Horn, J. Sugerman, K. Fatahalian, M. Houston, and P. Hanrahan, 'Brook for GPUs: Stream computing on graphics hardware,' Proceedings of ACM SIGGRAPH, 2004
11 V. Havran, 'Heuristic Ray Shooting Algorithms,' Ph.D. thesis, Department of Computer Science and Engineering, Faculty of Electrical Engineering, Czech Technical University in Prague, 2000
12 D. R. Horn, J. Sugerman, M. Houston, and P. Hanrahan, 'Interactive k-d tree GPU raytracing,' Proceedings of the 2007 symposium on Interactive 3D graphics and games, pp. 167-174, 2007
13 T. Foley, and J. Sugerman, 'KD-Tree Acceleration Structures for a GPU Raytracer,' Proceedings of Graphics Hardware, pp. 15-22, 2005
14 I. Wald, C. Benthin, M. Wagner, and P. Slusallek, 'Interactive Rendering with Coherent Ray Tracing,' EUROGRAPHICS, Vol.20 No.3 pp. 153-164, 2001
15 I. Wald, T. J. Purcell, J. Schmittler, C. Benthin, and P. Slusallek, 'Realtime Ray Tracing and its Use for Interactive Global Illumination,' EUROGRAPHICS State of the Art Reports, pp. 85-122, 2003
16 T. J. Purcell, I. Buck, W. R. Mark, and P. Hanrahan, 'Ray tracing on programmable graphics hardware,' ACM Trans. Graph, pp. 703-712, 2002