Beam Tracing Polygonal Objects - Robotics Institute Carnegie Mellon University

Beam Tracing Polygonal Objects

Paul Heckbert and Pat Hanrahan
Journal Article, ACM SIGGRAPH Computer Graphics, Vol. 18, No. 3, pp. 119 - 127, July, 1984

Abstract

Ray tracing has produced some of the most realistic computer generated pictures to date. They contain surface texturing, local shading, shadows, reflections and refractions. The major disadvantage of ray tracing results from its point-sampling approach. Because calculation proceeds ab initio at each pixel it is very CPU intensive and may contain noticeable aliasing artifacts. It is difficult to take advantage of spatial coherence because the shapes of reflections and refractions from curved surfaces are so complex.

In this paper we describe an algorithm that utilizes the spatial coherence of polygonal environments by combining features of both image and object space hidden surface algorithms. Instead of tracing infinitesimally thin rays of light, we sweep areas through a scene to form “beams.” This technique works particularly well for polygonal models since for this case the reflections are linear transformations, and refractions are often approximately so.

The recursive beam tracer begins by sweeping the projection plane through the scene. Beam-surface intersections are computed using two-dimensional polygonal set operations and an occlusion algorithm similar to the Weiler-Atherton hidden surface algorithm. For each beam-polygon intersection the beam is fragmented and new beams created for the reflected and transmitted swaths of light. These sub-beams are redirected with a 4×4 matrix transformation and recursively traced. This beam tree is an object space representation of the entire picture.

Since the priority of polygons is pre-determined, the final picture with reflections, refractions, shadows, and hidden surface removal is easily drawn. The coherence information enables very fast scan conversion and high resolution output. Image space edge and texture antialiasing methods can be applied.

BibTeX

@article{Heckbert-1984-15199,
author = {Paul Heckbert and Pat Hanrahan},
title = {Beam Tracing Polygonal Objects},
journal = {ACM SIGGRAPH Computer Graphics},
year = {1984},
month = {July},
volume = {18},
number = {3},
pages = {119 - 127},
}