CSDL Home IEEE Transactions on Visualization & Computer Graphics 2010 vol.16 Issue No.02 - March/April

Subscribe

Issue No.02 - March/April (2010 vol.16)

pp: 261-272

Jag Mohan Singh , International Institute of Information Technology (IIIT), Hyderabad

P.J. Narayanan , International Institute of Information Technology (IIIT), Hyderabad

DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/TVCG.2009.41

ABSTRACT

Compact representation of geometry using a suitable procedural or mathematical model and a ray-tracing mode of rendering fit the programmable graphics processor units (GPUs) well. Several such representations including parametric and subdivision surfaces have been explored in recent research. The important and widely applicable category of the general implicit surface has received less attention. In this paper, we present a ray-tracing procedure to render general implicit surfaces efficiently on the GPU. Though only the fourth or lower order surfaces can be rendered using analytical roots, our adaptive marching points algorithm can ray trace arbitrary implicit surfaces without multiple roots, by sampling the ray at selected points till a root is found. Adapting the sampling step size based on a proximity measure and a horizon measure delivers high speed. The sign test can handle any surface without multiple roots. The Taylor test that uses ideas from interval analysis can ray trace many surfaces with complex roots. Overall, a simple algorithm that fits the SIMD architecture of the GPU results in high performance. We demonstrate the ray tracing of algebraic surfaces up to order 50 and nonalgebraic surfaces including a Blinn's blobby with 75 spheres at better than interactive frame rates.

INDEX TERMS

Ray tracing, implicit surfaces, GPU rendering.

CITATION

Jag Mohan Singh, P.J. Narayanan, "Real-Time Ray Tracing of Implicit Surfaces on the GPU",

*IEEE Transactions on Visualization & Computer Graphics*, vol.16, no. 2, pp. 261-272, March/April 2010, doi:10.1109/TVCG.2009.41REFERENCES

- [1] J. Bloomenthal and K. Ferguson, “Polygonization of Non-Manifold Implicit Surfaces,”
Proc. ACM SIGGRAPH, pp. 309-316, 1995.- [3] S. Woop, J. Schmittler, and P. Slusallek, “RPU: A Programmable Ray Processing Unit for Realtime Ray Tracing,”
ACM Trans. Graphics, vol. 24, no. 3, pp. 434-444, 2005.- [4] T. Whitted and J. Kajiya, “Fully Procedural Graphics,”
Proc. ACM SIGGRAPH/EUROGRAPHICS Conf. Graphics Hardware, pp. 81-90, 2005.- [6] A. Knoll, Y. Hijazi, A. Kensler, M. Schott, C.D. Hansen, and H. Hagen, “Fast and Robust Ray Tracing of General Implicits on the GPU,” Technical Report UUSCI-2007-014, Univ. of Utah, 2007.
- [8] S. Green, Y. Urlasky, and E. Hart, “Nvidia Opengl SDK Isosurface Extraction Using Marching Tetrahedra,” http:/developer. nvidia.com/, 2007.
- [9] P. Hanrahan, “Ray Tracing Algebraic Surfaces,”
Proc. ACM SIGGRAPH, pp. 83-90, 1983.- [10] I. Wald and H.-P. Seidel, “Interactive Ray Tracing of Point Based Models,”
Proc. Symp. Point-Based Graphics, 2005.- [11] J.T. Kajiya, “Ray Tracing Parametric Patches,”
Proc. ACM SIGGRAPH, pp. 245-254, 1982.- [12] D.P. Mitchell, “Robust Ray Intersection with Interval Arithmetic,”
Proc. Graphics Interface Conf. '90, pp. 68-74, 1990.- [14] O. Caprani, L. Hvidegaard, M. Mortensen, and T. Schneider, “Robust and Efficient Ray Intersection of Implicit Surfaces,”
Reliable Computing, vol. 6, no. 1, pp. 9-21, 2000.- [15] J. Florez, M. Sbert, M.A. Sainz, and J. Vehi, “Improving the Interval Ray Tracing of Implicit Surfaces,”
Proc. Computer Graphics Int'l Conf., pp. 655-664, 2006.- [16] A. Knoll, Y. Hijazi, C.D. Hansen, I. Wald, and H. Hagen, “Interactive Ray Tracing of Arbitrary Implicit Functions,”
Proc. Eurographics/IEEE Symp. Interactive Ray Tracing, 2007.- [17] J.M. Singh and P.J. Narayanan, “Real-Time Ray-Tracing of Implicit Surfaces on the GPU,” Technical Report 2007-72, Int'l Inst. of Information Tech nology, 2007.
- [19] W.H. Press, S.A. Teukolsky, W.T. Vetterling, and B.P. Flannery,
Numerical Recipes in C: The Art of Scientific Computing. Cambridge Univ. Press, 1992.- [21] E. Hansen and W. Walster,
Global Optimization Using Interval Analysis. Marcel Dekker, 2003.- [23] T.J. Purcell, I. Buck, W.R. Mark, and P. Hanrahan, “Ray Tracing on Programmable Graphics Hardware,”
Proc. ACM SIGGRAPH, pp.703-712, 2002.- [24] N.A. Carr, J.D. Hall, and J.C. Hart, “The Ray Engine,”
Proc. ACM SIGGRAPH/EUROGRAPHICS Conf. Graphics Hardware, pp. 37-46, 2002.- [25] R. Toledo and B. Levy, “Extending the Graphic Pipeline with New gpu-Accelerated Primitives,” technical report, INRIA, 2004.
- [26] C. Sigg, T. Weyrich, M. Botsch, and M. Gross, “GPU-Based Ray-Casting of Quadratic Surfaces,”
Proc. Eurographics Symp. Point-Based Graphics '06, pp. 59-65, 2006.- [27] S.M. Ranta, J.M. Singh, and P.J. Narayanan, “GPU Objects,”
Proc. Indian Conf. Computer Vision, Graphics and Image Processing (ICVGIP), pp. 352-363, 2006.- [28] A. Adamson and M. Alexa, “Ray Tracing Point Set Surfaces,”
Proc. Int'l Conf. Shape Modeling and Applications (SMI '03), pp. 272-279, 2003.- [29] M. Hadwiger, C. Sigg, H. Scharsach, K. Buhler, and M. Gross, “Real-Time Ray-Casting and Advanced Shading of Discrete Isosurfaces,”
Proc. Ann. Conf. European Assoc. for Computer Graphics (Eurographics 2005), pp. 303-312, 2005.- [31] J. Seland and T. Dokken, “Real Time Algebraic Surface Visualization,”
Proc. Supercomputing '06 Workshop: General-Purpose GPU Computing: Practice and Experience, 2006.- [32] K. Perlin and E.M. Hoffert, “Hypertexture,”
Proc. ACM SIGGRAPH, pp. 253-262, 1989.- [33] D. Kalra and A.H. Barr, “Guaranteed Ray Intersections with Implicit Surfaces,”
Proc. ACM SIGGRAPH, pp. 297-306, 1989.- [37] E. de Groot and B. Wyvill, “Rayskip: Faster Ray Tracing of Implicit Surface Animations,”
Proc. Third Int'l Conf. Computer Graphics and Interactive Techniques in Australasia and South East Asia, pp. 31-36, 2005. |