Computer Graphics Brazil: Scalable GPU rendering of CSG models

  • Authors:
  • Fabiano Romeiro;Luiz Velho;Luiz Henrique de Figueiredo

  • Affiliations:
  • School of Engineering and Applied Sciences, Harvard University, 33 Oxford st, MD 215, Cambridge, MA 02138, USA;IMPA-Instituto Nacional de Matemática Pura e Aplicada, Estrada Dona Castorina 110, 22460-320 Rio de Janeiro, RJ, Brazil;IMPA-Instituto Nacional de Matemática Pura e Aplicada, Estrada Dona Castorina 110, 22460-320 Rio de Janeiro, RJ, Brazil

  • Venue:
  • Computers and Graphics
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

Existing methods that are able to interactively render complex CSG objects with the aid of GPUs are both image based and severely bandwidth limited. In this paper we present a new approach to this problem whose main advantage is its capability to efficiently scale the dependency on CPU instruction throughput, memory bandwidth and GPU instruction throughput. Here, we render CSG objects composed of convex primitives by combining spatial subdivision of the CSG object and GPU ray-tracing methods: the object is subdivided until it is locally ''simple enough'' to be rendered effectively on the GPU. Our results indicate that our method is able to share the load between the CPU and the GPU more evenly than previous methods, in a way that depends less on memory bandwidth and more on GPU instruction throughput for up to moderately sized CSG models. Even though the same results indicate that the present method is eventually becoming more bus bandwidth and CPU limited with the current state of the art GPUs, especially for extremely complex models, our method presents a solid recipe for escaping this problem in the future by a rescale of the dependency on CPU/memory bandwidth vs. GPU instruction throughput. With this, greater increases in performance are to be expected by adapting our method for newer generation of graphics hardware, as instruction throughput has historically increased at a greater pace than both bus bandwidth and internal GPU bandwidth.