Efficient Depth of Field Rasterization using a Tile Test based on Half-Space Culling

By Tomas Akenine-Möller, Robert Toth, Jacob Munkberg, and Jon Hasselgren
Intel Corporation

For depth of field rasterization, it is often desired to have an efficient tile versus triangle test, which can conservatively compute which samples on the lens that need to execute the inside-triangle test. We present a novel test for this, which is optimal in the sense that the region on the lens cannot be further reduced. Our test is based on removing half-space regions of the (u,v)-space on the lens from where the triangle to be rendered definitely cannot be seen through a tile of pixels. We find the intersection of all such regions exactly, and the resulting region can be used to reduce the number of sample-inside-triangle tests that need to be performed. Our main contribution is that the theory we develop provides an exact bound on how efficient a practical tile versus defocused triangle test ever can become. To verify our work, we also develop a conceptual implementation for depth of field rasterization based on our new theory. We show that the number of arithmetic operations involved in the rasterization process can be reduced, and more importantly, that with a tile test, multi-sampling anti-aliasing can be used which may reduce shader executions and the related memory bandwidth usage substantially. In general, this can be translated to performance increase and/or power savings.

Read the paper: Efficient Depth of Field Rasterization using a Tile Test based on Half-Space Culling [PDF 9.45MB]

Published previously at the Lund University Department of Computer Science web site, and is to be published subsequently in "Computer Science Forum" (submitted July 2011).

Efficient Depth of Field Rasterization Using a Tile Test Based on Half-Space Culling. Tomas Akenine-Möller, Robert Toth, Jacob Munkberg, Jon Hasselgren. In Computer Graphics Forum. Nov. 2011.

For more complete information about compiler optimizations, see our Optimization Notice.