Anti-aliasing for distance field graphics rendering

US11288788B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11288788-B2
Application numberUS-202016992890-A
CountryUS
Kind codeB2
Filing dateAug 13, 2020
Priority dateAug 13, 2020
Publication dateMar 29, 2022
Grant dateMar 29, 2022

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.

In one embodiment, a computing system may determine, for a pixel, a sampling location within a texture that comprises a plurality of texels, and based on the sampling location, select a set of texels in the plurality of texels. Each texel in the set of texels may encode a distance field. An interpolated distance field associated with the sampling location may be computed based on the distance fields associated with the set of texels. The interpolated distance field may represent a relative distance between the sampling location and a texture edge. According to a blending proportion based on the interpolated distance field, the computing system may determine a blended color for the sampling location by blending, a first and second color associated with a first side of the edge and a second side of the edge, and output a color for the pixel based on the blended color.

First claim

Opening claim text (preview).

What is claimed is: 1. A method comprising, by a computing system: determining, for a pixel, a sampling location within a texture that comprises a plurality of texels; selecting, based on the sampling location, a set of texels in the plurality of texels, wherein each texel in the set of texels encodes at least a distance field; computing, based on the distance fields associated with the set of texels, an interpolated distance field associated with the sampling location, wherein the interpolated distance field represents a relative distance between the sampling location and an edge depicted in the texture; determining a scaling factor for scaling the interpolated distance field from texel units to pixel units; scaling the interpolated distance field using the scaling factor; determining a blending proportion based on the scaled interpolated distance field; determining a blended color for the sampling location by blending, according to the blending proportion, a first color associated with a first side of the edge and a second color associated with a second side of the edge; and outputting a color for the pixel based on the blended color of the sampling location. 2. The method of claim 1 , further comprising: accessing a predetermined offset for the scaled interpolated distance field; wherein the blending proportion is further determined based on the predetermined offset for the scaled interpolated distance field. 3. The method of claim 2 , further comprising: determining a first sampling spacing of the plurality of texels in a first direction in pixel space; determining a second sampling spacing of the plurality of texels in a second direction in pixel space, the second direction being perpendicular to the first direction; and comparing the first sampling spacing and the second sampling spacing to determine which is smaller; wherein the scaling factor is determined based on the smaller one of the first sampling spacing or the second sampling spacing. 4. The method of claim 1 , further comprising: determining one or more second blended colors for one or more second sampling locations for the pixel; and determining the color for the pixel based on the blended color of the sampling location and the one or more second blended colors of the one or more second sampling locations for the pixel; wherein the color for the pixel is included in a frame. 5. The method of claim 4 , further comprising: determining a first sampling spacing of the plurality of texels in a first direction in pixel space; determining a second sampling spacing of the plurality of texels in a second direction in pixel space, the second direction being perpendicular to the first direction; and determining a jitter orientation based on a comparison between the first sampling spacing and the second sampling spacing; wherein the sampling location and the one or more second sampling locations in the texture correspond to locations in the pixel that are distributed along the jitter orientation. 6. The method of claim 5 , further comprising: determining a jitter range based on a difference between the first sampling spacing and the second sampling spacing; wherein the locations in the pixel corresponding to the sampling location and the one or more second sampling locations in the texture are distributed within the jitter range along the jitter orientation. 7. The method of claim 1 , wherein the color for the pixel is associated with a first frame in a sequence of frames, the method further comprising: determining a second blended color for a second sampling location associated with a second pixel in a second frame in the sequence of frames, wherein: a relative location of the pixel in the first frame and a relative location of the second pixel in the second frame are the same; and a location in the pixel corresponding to the sampling location within the texture and a second location in the second pixel corresponding to the second sampling location within the texture are different; outputting a second color for the second pixel based on the second blended color of the second sampling location; wherein the second color for the second pixel is included in the second frame. 8. The method of claim 7 , further comprising: determining a first sampling spacing of the plurality of texels in a first direction in pixel space; determining a second sampling spacing of the plurality of texels in a second direction in pixel space, the second direction being perpendicular to the first direction; and determining a jitter orientation based on a comparison between the first sampling spacing and the second sampling spacing; wherein the location in the pixel and the second location in the second pixel are distributed along the jitter orientation. 9. The method of claim 1 , wherein the first color and the second color are blended in response to a determination that the sampling location is within a predetermined range from the edge depicted in the texture. 10. The method of claim 9 , wherein the predetermined range is half a pixel from the edge depicted in the texture. 11. The method of claim 1 , wherein the output color based on the blended color contains a first percent proportion of the first color and a second percent proportion of the second color. 12. The method of claim 11 , wherein the first percent proportion and the second percent proportion respectively correspond to an apparent transparency of the first color and the second color. 13. One or more computer-readable non-transitory storage media embodying software that is operable when executed to: determine, for a pixel, a sampling location within a texture that comprises a plurality of texels; select, based on the sampling location, a set of texels in the plurality of texels, wherein each texel in the set of texels encodes at least a distance field; compute, based on the distance fields associated with the set of texels, an interpolated distance field associated with the sampling location, wherein the interpolated distance field represents a relative distance between the sampling location and an edge depicted in the texture; determine a blending proportion based on the interpolated distance field; determine a blended color for the sampling location by blending, according to the blending proportion, a first color associated with a first side of the edge and a second color associated with a second side of the edge; and output a color for the pixel based on the blended color of the sampling location. 14. The media of claim 13 , wherein the software is further operable when executed to: access a predetermined offset for the scaled interpolated distance field; wherein the blending proportion is further determined based on the predetermined offset for the scaled interpolated distance field. 15. The media of claim 14 , wherein the software is further operable when executed to: determine a first sampling spacing of the plurality of texels in a first direction in pixel space; determine a second sampling spacing of the plurality of texels in a second direction in pixel space, the second direction being perpendicular to the first direction; and compare the first sampling spacing and the second sampling spacing to determine which is smaller; wherein the scaling factor is determined based on the smaller one of the first sampling spacing or the second sampling spacing. 16. The media of claim 13 , wherein the software is further operable when executed to: determine one or more second blended colors for one or more second sampling locations for th

Assignees

Inventors

Classifications

  • Texturing; Colouring; Generation of textures or colours (retouching, inpainting or scratch removal G06T5/77) · CPC title

  • G06T11/23Primary

    using straight lines or curves · CPC title

  • G06T15/503Primary

    Blending, e.g. for anti-aliasing · CPC title

  • Texture mapping · CPC title

  • Determination of colour characteristics · CPC title

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 US11288788B2 cover?
In one embodiment, a computing system may determine, for a pixel, a sampling location within a texture that comprises a plurality of texels, and based on the sampling location, select a set of texels in the plurality of texels. Each texel in the set of texels may encode a distance field. An interpolated distance field associated with the sampling location may be computed based on the distance f…
Who is the assignee on this patent?
Facebook Tech Llc
What technology area does this patent fall under?
Primary CPC classification G06T11/23. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Mar 29 2022 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).