Patent ID: 7307628

Claim:
In a graphics processing system, a method for culling small primitives from geometry data to be rasterized onto an array of pixels, the method comprising: dividing the pixel array into a plurality of internal regions and a plurality of external regions, wherein each internal region corresponds to an area of the pixel array that includes a center point of one of the pixels and each external region corresponds to an area of the pixel array between internal regions, wherein the internal regions include a plurality of substantially diamond shaped regions, each diamond-shaped internal region being centered on a pixel center, wherein the external regions include a plurality of substantially diamond shaped regions, each diamond-shaped external region being centered on an intersection point of edges of a pixel; defining a unique canonical location identifier for each of the internal and external regions, wherein the canonical location identifier for each region includes a type indicator having a first state for indicating that the region is an internal region and a second state for indicating that the region is an external region; receiving a primitive having a plurality of vertices; assigning one of the canonical location identifiers to each vertex of the primitive, wherein the assigned identifier identifies the region of the pixel array that contains the vertex; determining, based on the respective canonical location identifiers of each vertex, whether the primitive satisfies a visibility rule defined with reference to a boundary crossing between an internal region and an external region; culling the primitive in the event that the primitive does not satisfy the visibility rule, and rasterizing the primitive onto the pixel array, if the primitive has not been culled.