Optimizing a graphics rendering pipeline using early Z-mode
US-8933933-B2 · Jan 13, 2015 · US
US10008029B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10008029-B2 |
| Application number | US-201313907711-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 31, 2013 |
| Priority date | May 31, 2013 |
| Publication date | Jun 26, 2018 |
| Grant date | Jun 26, 2018 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Updating depth related graphics data is described. Geometric primitives are processed. Pixels are generated from the primitives based on the processing, each of which has at least one corresponding depth value. Culling is performed on a first group of the pixels, based on a representation of the at least one depth related value corresponding to each. Pixels may be discarded based on the culling and upon which a second group of pixels remain. A depth related raster operations function is performed, in which data is transacted with a depth buffer. The culling function is updated in relation to the transacting. The updating is performed on the basis of a granularity, which characterizes the culling function.
Opening claim text (preview).
What is claimed is: 1. A method for rendering graphics data, the method comprising: processing one or more input geometric primitives, generating a plurality of pixels from the one or more input geometric primitives based on the processing, wherein each of the plurality of pixels has at least one depth value; performing a depth culling function in a pixel granularity on the plurality of pixels based on a representation of the at least one depth value corresponding to each of the plurality of pixels, wherein the performing the depth culling function comprises: discarding one or more first pixels of the plurality of pixels and retaining one or more second pixels of the plurality of pixels; and transacting data with a first depth buffer, wherein the transacting comprises updating the first depth buffer in the pixel granularity; and performing a depth raster operations function in a sample granularity that is different from the pixel granularity, wherein the performing the depth raster operations function comprises transacting data with a second depth buffer and updating the depth culling function in relation to the transacting, and wherein the updating is performed in the pixel granularity, and wherein the first depth buffer stores a logical instance of the second depth buffer and has a storage or sampling granularity that is less than that of the second depth buffer. 2. The method as recited in claim 1 wherein the first depth buffer is local to the depth culling function. 3. The method as recited in claim 2 wherein the second depth buffer is a portion of a frame buffer. 4. The method as recited in claim 2 wherein the first depth buffer comprises an approximation of the second depth buffer. 5. The method as recited in claim 4 wherein the approximation comprises a conservative approximation. 6. The method as recited in claim 1 wherein the sample granularity corresponds to an active anti-aliasing spatial sampling granularity that, based on processing thereof, characterizes a surface of the one or more input geometric primitives. 7. The method as recited in claim 6 , further comprising: determining that the active anti-aliasing sampling granularity differs from the pixel granularity; and based upon the determining, changing a data rate associated with the active anti-aliasing sampling granularity, wherein the updating the depth culling function is performed with a changed data rate. 8. The method as recited in claim 1 , further comprising one or more of: rasterizing pixels; performing a pre-raster operations function; shading pixels; or performing a color raster operations function. 9. A graphics processing unit (CPU) comprising: memory; and a graphics rendering pipeline, wherein the graphics rendering pipeline is configured to perform a method of rendering graphics data, the method comprising: processing one or more input geometric primitives; generating a plurality of pixels from the one or more input geometric primitives based on the processing, wherein each of the plurality of pixels has at least one depth value; performing a depth culling function, in a pixel granularity on the plurality of pixels based on a representation of the at least one depth value corresponding to each of the plurality of pixels, wherein the performing the depth culling function comprises: discarding one or more first pixels of the plurality of pixels and retaining one or more second pixels of the plurality of pixels; and transacting data with a first depth buffer, and wherein the transacting comprises updating the first depth buffer in the pixel granularity; and performing a depth raster operations function in a sample granularity that is different from the pixel granularity, wherein the performing the depth raster operations function comprises transacting data with a second depth buffer in the sample granularity and updating the depth culling function in relation to the transacting, and wherein the updating is performed in the pixel granularity, and wherein the first depth buffer stores a logical instance of the second depth buffer and has a storage or sampling granularity that is less than that of the second depth buffer. 10. The GPU as recited in claim 9 wherein the second depth buffer is a portion of a frame buffer and wherein the first depth buffer is local to the depth culling function. 11. The GPU as recited in claim 9 wherein the first depth buffer comprises an approximation of the second depth buffer. 12. The GPU as recited in claim 11 wherein the approximation comprises a conservative approximation. 13. The GPU as recited in claim 9 wherein the transacting data with the second depth buffer is performed based on the sample granularity, and wherein the sample granularity corresponds to an active anti-aliasing spatial sampling granularity that characterizes a surface of the one or more input geometric primitives. 14. The GPU as recited in claim 13 , wherein the method further comprises: determining that the active anti-aliasing sampling granularity differs from the pixel granularity used by the depth culling function; and based upon the determining, changing a data rate associated with the active anti-aliasing sampling granularity, wherein the updating the depth culling function is performed with a changed data rate. 15. The GPU as recited in claim 9 wherein the method further comprises one or more of: rasterizing pixels; performing a pre-raster operations function; shading pixels; and performing a color raster operations function. 16. A computer apparatus comprising: a first processor; first memory coupled to the first processor; a graphics processing unit configured to perform high speed processing substantially independent of the first processor; and second memory comprising a frame buffer coupled to the graphics processing unit; wherein the graphics processing unit comprises a graphics rendering pipeline, and wherein the graphics rendering pipeline is configured to perform a method of rendering graphics data, the method comprising: generating a plurality of pixels from the one or more input geometric primitives, wherein each of the plurality of pixels has at least one depth value; performing a depth culling function in a pixel granularity on the plurality of pixels based on a representation of the at least one depth value corresponding to each of the plurality of pixels, wherein the performing the depth culling function comprises: discarding one or more first pixels of the plurality of pixels and retaining one or more second pixels of the plurality of pixels; and transacting data with a first depth buffer, and wherein the transacting comprises updating the first depth buffer in the pixel granularity; and performing a depth raster operations function in a sample granularity that is different from the pixel granularity, wherein the performing the depth raster operations function comprises transacting data with a second depth buffer and updating the depth culling function in relation to the transacting, and wherein the updating is performed in the pixel granularity, and wherein the first depth buffer stores a logical instance of the second depth buffer and has a storage or sampling granularity that is less than that of the second depth buffer.
using Z-buffer · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.