The CAZ-buffer
Jerome "Jay" Duluk
Abstract
The Content Addressable Z-buffer, abbreviated CAZ-buffer, is a proposed
enhancement for the 3D graphics pipeline. The CAZ-buffer performs, in only a
few clock cycles, parallel Z-buffer tests on: 1) regions of space, or groups of
objects; 2) bounding volumes of objects; and 3) polygons. The CAZ-buffer is
generally located between the screen space conversion portion and the
rasterization portion of the 3D graphics pipeline and operates on vertices in
screen coordinates. For scenes with significant depth complexity, performing
Occluding Tests on entire objects can quickly eliminate hidden objects from
further processing, thereby increasing performance of the pipeline. When a
non-hidden object's polygons are processed, potentially visible portions of the
polygons are determined, and this information is passed to the rasterization
portion of the pipeline. When a frame is completely rendered, the CAZ-buffer
is used to generate a Visible Geometry List (VGL). In the next frame, geometry
in the VGL is rendered first, and, due to temporal correlation, the majority of
the remaining geometry is hidden and can be quickly culled by the Occluding
Tests. It is hypothesized that the performance gain approaches the depth
complexity of the scene. The CAZ-buffer is a custom CMOS VLSI circuit design.
The CAZ-buffer is covered by granted and pending patents. Content Addressable
Z-buffer and CAZ-buffer are trademarks of Silicon Engines, Inc.