CSG Operations of Arbitrary Primitives with Interval Arithmetic and Real-Time Ray Casting

We apply Knoll et al.'s algorithm [Knoll et al., "Fast ray tracing of arbitrary implicit surfaces with interval and affine arithmetic.", Comput. Graph. Forum, 28(1):26–40, 2009] to interactively ray-cast constructive solid geometry (CSG) objects of arbitrary primitives represented as implicit functions. Whereas modeling globally with implicit surfaces suffers from a lack of control, implicits are well-suited for arbitrary primitives and can be combined through various operations. The conventional way to represent union and intersection with interval arithmetic (IA) is simply using min and max but other operations such as the product of two forms can be useful in modeling joints between multiple objects. Typical primitives are objects of simple shape, e.g. cubes, cylinders, spheres, etc. Our method handles arbitrary primitives, e.g. superquadrics or non-algebraic implicits. Subdivision and interval arithmetic guarantee robustness whereas GPU ray casting allows for fast and aesthetic rendering. Indeed, ray casting parallelizes efficiently and trivially and thus takes advantage of the continuous increasing computational power of hardware (CPUs and GPUs); moreover it lends itself to multi-bounce effects, such as shadows and transparency, which help for the visualization of complicated objects. With our system, we are able to render multi-material CSG trees of implicits robustly, in interactive time and with good visual quality.

[1]  Alexei Sourin,et al.  Function representation in geometric modeling: concepts, implementation and applications , 1995, The Visual Computer.

[2]  Charles T. Loop,et al.  Real-time GPU rendering of piecewise algebraic surfaces , 2006, ACM Trans. Graph..

[3]  B. Guenter,et al.  Exact Procedural CSG Modeling for Real Time Graphics , 2007 .

[4]  Margo McCall,et al.  IEEE Computer Society , 2019, Encyclopedia of Software Engineering.

[5]  Pat Hanrahan,et al.  Ray tracing algebraic surfaces , 1983, SIGGRAPH.

[6]  John C. Hart,et al.  Sphere tracing: a geometric method for the antialiased ray tracing of implicit surfaces , 1996, The Visual Computer.

[7]  Devendra Kalra,et al.  Guaranteed ray intersections with implicit surfaces , 1989, SIGGRAPH.

[8]  Jarke J. van Wijk,et al.  Ray tracing objects defined by sweeping a sphere , 1984, Comput. Graph..

[9]  James F. Blinn,et al.  Real-time GPU rendering of piecewise algebraic surfaces , 2006, SIGGRAPH 2006.

[10]  Henry Fuchs,et al.  Fast constructive-solid geometry display in the pixel-powers graphics system , 1986, SIGGRAPH.

[11]  Jürgen Döllner,et al.  Rendering Techniques for Hardware-Accelerated Image-Based CSG , 2004, WSCG.

[12]  Hans Hagen,et al.  Fast Ray Tracing of Arbitrary Implicit Surfaces with Interval and Affine Arithmetic , 2009, Comput. Graph. Forum.

[13]  Gregory M. Nielson,et al.  Radial Hermite operators for scattered point cloud data with normal vectors and applications to implicitizing polygon mesh surfaces for generalized CSG operations and smoothing , 2004, IEEE Visualization 2004.

[14]  Luiz Velho,et al.  Hardware-assisted Rendering of CSG Models , 2006, 2006 19th Brazilian Symposium on Computer Graphics and Image Processing.

[15]  Scott D. Roth,et al.  Ray casting for modeling solids , 1982, Comput. Graph. Image Process..

[16]  Tom Duff,et al.  Interval arithmetic recursive subdivision for implicit functions and constructive solid geometry , 1992, SIGGRAPH.

[17]  H. Hagen,et al.  Interactive Ray Tracing of Arbitrary Implicits with SIMD Interval Arithmetic , 2007, 2007 IEEE Symposium on Interactive Ray Tracing.

[18]  D. P. Mitchell Robust ray intersection with interval arithmetic , 1990 .