System, method, and computer program product for pre-filtered anti-aliasing with deferred shading

US9547931B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9547931-B2
Application numberUS-201514704875-A
CountryUS
Kind codeB2
Filing dateMay 5, 2015
Priority dateMay 5, 2014
Publication dateJan 17, 2017
Grant dateJan 17, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A system, method, and computer program product are provided for generating anti-aliased images. The method includes the steps of assigning one or more samples to a plurality of clusters, each cluster in the plurality of clusters corresponding to an aggregate stored in an aggregate geometry buffer, where each of the one or more samples is covered by a visible fragment and rasterizing three-dimensional geometry to generate material parameters for each sample of the one or more samples. For each cluster in the plurality of clusters, the material parameters for each sample assigned to the cluster are combined to produce the aggregate. The combined material parameters for each cluster are stored in an aggregate geometry buffer. An anti-aliased image may then be generated by shading the combined material parameters.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising: assigning one or more samples to a plurality of clusters, each cluster in the plurality of clusters corresponding to an aggregate stored in an aggregate geometry buffer, wherein each of the one or more samples is covered by a visible fragment; rasterizing three-dimensional geometry to generate material parameters for each sample of the one or more samples; for each cluster in the plurality of clusters, combining the material parameters for each sample assigned to the cluster to produce the aggregate; and storing the combined material parameters for each cluster in the aggregate geometry buffer. 2. The method of claim 1 , further comprising, prior to assigning the one or more samples to the plurality of clusters, computing a mean position and a mean normal vector for the one or more samples in a screen-space region. 3. The method of claim 2 , further comprising defining a first cluster of the clusters as including a first sample of the one or more samples that is farthest from the mean position. 4. The method of claim 3 , further comprising defining a second cluster of the clusters as including a second sample of the one or more samples that is farthest from the first sample. 5. The method of claim 4 , further comprising: determining that the remaining samples of the one or more samples are within a distance t of either the first cluster or the second cluster; and assigning each of the remaining samples to the nearest of the first cluster and the second cluster. 6. The method of claim 1 , wherein the aggregate represents a statistical distribution of sub-pixel geometry within a screen-space region. 7. The method of claim 6 , wherein the screen-space region is a pixel. 8. The method of claim 1 , further comprising shading the combined material parameters to produce an anti-aliased image. 9. The method of claim 1 , wherein the assigning of the one or more samples to the plurality clusters is based on depth values of the one or more samples. 10. The method of claim 1 , wherein the assigning of samples to clusters is based on positions of the visible fragment that covers each sample. 11. The method of claim 1 , wherein the assigning of the one or more samples to the plurality clusters is based on normal vector data for the visible fragment that covers each sample. 12. The method of claim 1 , wherein a pixel includes n samples and c clusters are defined for the pixel, where c is less than n. 13. A non-transitory computer-readable storage medium storing instructions that, when executed by a processor, cause the processor to perform steps comprising assigning one or more samples to a plurality of clusters, each cluster in the plurality of clusters corresponding to an aggregate stored in an aggregate geometry buffer, wherein each of the one or more samples is covered by a visible fragment; rasterizing three-dimensional geometry to generate material parameters for each sample of the one or more samples; for each cluster in the plurality of clusters, combining the material parameters for each sample assigned to the cluster to produce the aggregate; and storing the combined material parameters for each cluster in the aggregate geometry buffer. 14. A system comprising: a memory configured to store an aggregate geometry buffer; and a plurality of multithreaded processing units that are included within a parallel processor and are coupled to the memory and configured to: assign one or more samples to a plurality of clusters, each cluster in the plurality of clusters corresponding to an aggregate stored in the aggregate geometry buffer, wherein each of the one or more samples is covered by a visible fragment; rasterize three-dimensional geometry to generate material parameters for each sample of the one or more samples; for each cluster in the plurality of clusters, combine the material parameters for each sample assigned to the cluster to produce the aggregate; and store the combined material parameters for each cluster in the aggregate geometry buffer. 15. The system of claim 14 , wherein, prior to assigning the visible samples to the clusters, the plurality of processing cores are further configured to compute mean position and mean normal vector data for the one or more samples in a screen-space region. 16. The system of claim 15 , wherein the plurality of processing cores are further configured to define a first cluster of the clusters as including a first sample of the one or more samples that is farthest from the mean position. 17. The system of claim 14 , wherein the aggregate represents a statistical distribution of sub-pixel geometry within a screen-space region. 18. The system of claim 17 , wherein the screen-space region is a pixel. 19. The system of claim 14 , wherein the plurality of processing cores are further configured to shade the combined material parameters to produce an anti-aliased image. 20. The system of claim 14 , wherein the one or more samples are assigned to the plurality clusters based on depth values of the one or more samples.

Assignees

Inventors

Classifications

  • using classification, e.g. of video objects · CPC title

  • Non-hierarchical techniques, e.g. based on statistics of modelling distributions · CPC title

  • Distances to cluster centroïds · CPC title

  • Clustering techniques · CPC title

  • Physics · mapped topic

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9547931B2 cover?
A system, method, and computer program product are provided for generating anti-aliased images. The method includes the steps of assigning one or more samples to a plurality of clusters, each cluster in the plurality of clusters corresponding to an aggregate stored in an aggregate geometry buffer, where each of the one or more samples is covered by a visible fragment and rasterizing three-dimen…
Who is the assignee on this patent?
Nvidia Corp
What technology area does this patent fall under?
Primary CPC classification G06T15/005. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 17 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).