Patent ID: 8692829

Claim:
A method for computing plane equations for graphic primitives, comprising: for each graphics primitive in the graphics primitives, storing vertex attributes in a circular buffer entry associated with the graphics primitive; computing a z plane equation for each one of the graphics primitives using z attributes of each vertex of a graphics primitive, wherein each z attribute is stored in a circular buffer entry; for each graphics primitive in the graphics primitives, storing a partial plane equation for vertex non-z attributes in a buffer for subsequent retrieval by a fragment shader; rasterizing each one of the graphics primitives at a coarse level to produce coarse z values by evaluating the z plane equations; culling one or more of the rasterized graphics primitives based on the coarse z values to produce remaining graphics primitives; for each graphics primitive that is culled, invalidating the corresponding circular buffer entry; dividing a screen-space into a plurality of screen-space tiles; computing, after producing the remaining graphics primitives, a non-z plane equation for each one of the remaining graphics primitives and only for each screen-space tile included within a subset of the plurality of screen-space tiles, wherein the non-z plane equations are calculated using a different attribute for each vertex of the graphics primitive stored in a circular buffer entry; and shading the remaining graphics primitives by evaluating the non-z plane equations to produce an image, wherein culling the one or more rasterized graphics primitives, and invalidating the circular buffer entries, cause invalidated circular buffer entries to not be accessed during computing.