Fast backface culling using normal masks

This paper presents a novel method for fast and efficient backface culling: we reduce the backface test to one logical operation per polygon while requiring only two bytes extra storage per polygon. The normal mask is introduced, where each bit is associated with a cluster of normals in a normal-space partitioning. A polygon's normal is approximated by the cluster of normals in which it falls; the cluster's normal mask is stored with the polygon in a preprocessing step. Although conceptually the normal masks require as many bits as the number of clusters, we observe that only two bytes are actually necessary. For each frame (and for each viewing volume), we calculate the backface mask by ORing the normals masks of all normal clusters that are backfacing. The backface test finally reduces to a single logical AND operation between the polygon's normal mask and the backface mask. CR