Graphics texture mapping

US11645807B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11645807-B2
Application numberUS-202217647137-A
CountryUS
Kind codeB2
Filing dateJan 5, 2022
Priority dateJan 6, 2021
Publication dateMay 9, 2023
Grant dateMay 9, 2023

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.

When performing anisotropic filtering when sampling a texture to provide an output sampled texture value for use when rendering an output in a graphics processing system, a number of positions for which to sample the texture along an anisotropy direction along which samples will be taken in the texture is determined by determining the square root of the coefficient F for an ellipse having the form Ax2+Bxy+Cy2=F corresponding to the projection of the sampling point for which the texture is being sampled onto the surface to which the texture is to be applied, and using the determined square root of the ellipse coefficient F to determine the number of positions for which samples should be taken along the anisotropy direction in the texture.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of performing anisotropic filtering when sampling a texture to provide an output sampled texture value for use when rendering an output in a graphics processing system, the method comprising: when sampling a texture using anisotropic filtering to provide an output sampled texture value for a position x, y in the texture: determining a number of positions for which to sample the texture along an anisotropy direction along which samples will be taken in the texture by: determining the square root of the coefficient F for an ellipse having the form Ax 2 +Bxy+Cy 2 =F corresponding to the projection of the sampling point for which the texture is being sampled onto the surface to which the texture is to be applied, where x and y are the coordinates of the position in the texture for which the output sampled texture value is to be provided; and using the determined square root of the ellipse coefficient F, determining a number of positions for which samples should be taken along the anisotropy direction in the texture; the method further comprising: taking a sample or samples along the anisotropy direction in the texture based on the determined number of positions; and using the sample or samples taken along the anisotropy direction in the texture to provide an output sampled texture value for use for the position in the texture that is being sampled. 2. The method of claim 1 , wherein the square root of the ellipse coefficient F is determined from the derivatives of the texture coordinates, dTdx, dTdy, as follows: F _sqrt=abs(dTd x.y *dTd y.x −dTd x.x *dTd y.y ) where x, y is the position in the texture for which an output sampled texture value is required. 3. The method of claim 1 , wherein the square root of the ellipse coefficient F is used as a scaling factor when determining a number of positions for which samples should be taken along the anisotropy direction in the texture. 4. The method of claim 1 , further comprising determining the ellipse coefficients A, B and C, and using the determined ellipse coefficients A, B and C and the square root of the ellipse coefficient F to determine the number of positions to sample as follows: root=sqrt(( A−C ){circumflex over ( )}2 +B{circumflex over ( )} 2) aniso_degree=( A+C +root)/(2.0 *F _sqrt) where A, B, C and F are the ellipse coefficients for the ellipse that is the projection of the screen space sampling position onto the surface to which the texture is to be applied; and aniso_degree is the determined number of positions in the texture to be sampled. 5. The method of claim 1 , further comprising determining a level of detail (LOD) at which to sample the texture as follows: lod=0.5*(2.0*log 2( F _sqrt)+1.0−log 2( A+C +root)) where: lod is the determined level of detail; root=sqrt((A−C){circumflex over ( )}2+B{circumflex over ( )}2); A, B, and C are the ellipse coefficients; and F_sqrt is the square root of the ellipse coefficient F. 6. The method of claim 1 , further comprising determining a level of detail (LOD) at which to sample the texture by: determining a first level of detail at which to sample the texture using a first level of detail determination process; determining a second level of detail at which to sample the texture using a second, different level of detail determination process; and selecting one of the first and second determined levels of detail as the level of detail at which to sample the texture. 7. A method of performing anisotropic filtering when sampling a texture to provide an output sampled texture value for use when rendering an output in a graphics processing system, the method comprising: when sampling a texture that is provided as two or more mipmaps using anisotropic filtering to provide an output sampled texture value for a position x, y in the texture: determining a level of detail at which to sample the texture, by: determining the square root of the coefficient F for an ellipse having the form Ax 2 +Bxy+Cy 2 =F corresponding to the projection of the sampling point for which the texture is being sampled onto the surface to which the texture is to be applied, where x and y are coordinates of the position in the texture for which the output sampled texture value is to be provided; and using a log 2 operation on the determined square root of the ellipse coefficient F to determine the level of detail at which to sample the texture; the method further comprising: using the determined level of detail to select one or more of the mipmap levels for the texture from which to take samples to provide the output sampled texture value; taking a sample or samples for one or more positions along an anisotropy direction in the texture in the selected one or more mipmap levels; and using the sample or samples taken along the anisotropy direction in the one or more mipmap levels to provide an output sampled texture value for use for the position in the texture that is being sampled. 8. The method of claim 7 , further comprising determining a level of detail (LOD) at which to sample the texture by: determining a first level of detail at which to sample the texture using a first level of detail determination process; determining a second level of detail at which to sample the texture using a second, different level of detail determination process; and selecting one of the first and second determined levels of detail as the level of detail at which to sample the texture. 9. The method of claim 8 , comprising determining a level of detail at which to sample the texture as follows: lod_clamped=0.5*(log 2( A+C +root)−1.0)−log 2(max_aniso) lod_unclamped=0.5*(2.0*log 2( F _sqrt)+1.0−log 2( A+C +root)) lod=max(lod_clamped,lod_unclamped) where: lod is the determined level of detail; root=sqrt((A−C){circumflex over ( )}2+B{circumflex over ( )}2); A, B, and C are the ellipse coefficients; F_sqrt is the square root of the ellipse coefficient F; and max_aniso is a permitted maximum number of positions for which to sample the texture. 10. The method of claim 7 , wherein the square root of the ellipse coefficient F is determined from the derivatives of the texture coordinates, dTdx, dTdy, as follows: F _sqrt=abs(dTd x.y *dTd y.x −dTd x.x *dTd y.y ) where x, y is the position in the texture for which an output sampled texture value is required. 11. The method of claim 7 , wherein the square root of the ellipse coefficient F is used as a scaling factor when determining a number of positions for which samples should be taken along the anisotropy direction in the texture. 12. The method of claim 7 , further comprising determining the ellipse coefficients A, B and C, and using the determined ellipse coefficients A, B and C and the square root of the ellipse coefficient F to determine the number of positions to sample as follows: root=sqrt(( A−C ){circumflex over ( )}2+ B{circumflex over ( )} 2) aniso_degree=( A+C +root)/(2.0 *F _sqrt) where A, B, C and F are the ellipse coefficients for the ellipse that is the projection of the screen space sampling position onto the surface to which the texture is to be applied; and aniso_degree is the determined number of positions in the texture to be sampled. 13. The method of claim 7 , further comprising determining a level of detail (LOD) at which to sample the texture as follows: lod=0.5*(2.0*log 2( F _sqrt)+1.0−log 2( A+C +root)) where: lod is the determined level of detail; root=sqrt((A−C){circumflex over ( )}2+B{circumflex over ( )}2); A, B, and C are the ellipse coefficients; and F_sqrt is the square root of t

Assignees

Inventors

Classifications

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

  • using image operators, e.g. filters, edge density metrics or local histograms · CPC title

  • Processor architectures; Processor configuration, e.g. pipelining · CPC title

  • G06T15/04Primary

    Texture mapping · CPC title

  • General purpose rendering architectures · 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 US11645807B2 cover?
When performing anisotropic filtering when sampling a texture to provide an output sampled texture value for use when rendering an output in a graphics processing system, a number of positions for which to sample the texture along an anisotropy direction along which samples will be taken in the texture is determined by determining the square root of the coefficient F for an ellipse having the f…
Who is the assignee on this patent?
Advanced Risc Mach Ltd
What technology area does this patent fall under?
Primary CPC classification G06T15/04. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 09 2023 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 10 related publications on this page (citations in our corpus or others sharing the same primary CPC).