The Ray Tracing Kernel

David Kirk and James Arvo


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 consequence of a collection of data abstractions called the ray tracing kernel. By defining an object in a broad sense, the kernel allows a single abstraction to encapsulate a wide spectrum of concepts including geometric primitives, acceleration techniques, CSG operators, and object transformations. Through hierarchical nesting of instances of these objects we are able to construct and efficiently render complex environments.


[ Home * Images * Links * Paper Archive * Publications * Software ]