Techniques for Interactive Ray Tracing of Bézier Surfaces

Carsten Benthin
inTrace GmbH

Ingo Wald
SCI Institute, University of Utah

Philipp Slusallek
Computer Graphics Lab, Saarland University

This paper appears in issue Volume 11, Number 2.
An electronic version of this article is available.

Abstract

We present a simple and generic algorithm for interactive ray tracing of free-form surfaces, allowing for a simple implementation for bicubic Bézier surfaces. The algorithm uses a fixed number of on-the-fly refinement steps to prevent crack appearance. Furthermore, we show that grouping rays into coherent bundles and tracing them together achieves a speed-up factor of more than 5 compared to tracing only single rays. Combining ray-bundle-based ray tracing with optimized kd-tree construction even allows for interactively ray tracing completely dynamic scenes with thousands of patches. Even highly complex scenes consisting of a million Bézier patches can be interactively ray traced while requiring only a few seconds startup time. Source code is available online.

Author Information

Carsten Benthin, inTrace GmbH, Schuetzenstrasse 3-5 66123 Saarbrücken, Germany benthin@intrace.com

Ingo Wald, SCI Institute, University of Utah, 50 South Central Campus Drive, Room 3490, Salt Lake City, UT 84112 wald@sci.utah.edu

Philipp Slusallek, Computer Graphics Lab, Saarland University, Im Stadtwald - Building E 1 1 66123 Saarbrücken, Germany slusallek@cs.uni-sb.de

Source Code

Ray-Patch-Intersection example code

BibTeX Entry

@article{BenthinEtAl06,
  author = "Carsten Benthin and Ingo Wald and Philipp Slusallek",
  title = "Techniques for Interactive Ray Tracing of Bézier Surfaces",
  journal = "journal of graphics, gpu, and game tools",
  volume = "11",
  number = "2",
  pages = "1-16",
  year = "2006",
}