| | |
Summary: The Ray Tracing Kernel
David Kirk* and James Arvo, Apollo Computer, Inc.,
330 Billerica, Chelmsford, MA 01824, USA.
*current address: California Institute of Technology,
Computer Science 25680, Pasadena, CA 91125, USA
Abstract
We describe a methodology for implementing
a ray tracer which provides both a convenient
testbed for developing new algorithms and a way
to exploit the growing number of acceleration
techniques. These benefits are a natural conse
quence of a collection of data abstractions called
the ray tracing kernel. By defining an object in
a broad sense, the kernel allows a single abstrac
tion to encapsulate a wide spectrum of concepts
including geometric primitives, acceleration tech
niques, CSG operators, and object transforma
tions. Through hierarchical nesting of instances
of these objects we are able to construct and effi
ciently render complex environments.
|