IP Library Granted Patent US 10,964,088
Granted Patent B2
US 10,964,088 · App. 16/583,924 · Granted Mar 30, 2021

Mipmap with mixed texture types

Inventors: Larry Seiler (Redmond, WA); Alexander Nankervis (Seattle, WA); John Adrian Arthur Johnston (San Mateo, CA)
Assignee: Facebook Technologies, LLC
G06T15/04G06T7/90G06T11/001G06T11/60G06T15/50
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,964,088
App. No.
16/583,924
Granted
Mar 30, 2021
Kind
B2
Abstract

In one embodiment, a method for computing a color value for a sampling pixel region includes using a computing system to determine a sampling pixel region within a texture. The texture is associated with mipmap levels having different resolutions of the texture. The mipmap levels include at least a first mipmap level defined by color texels and a second mipmap level defined by distance-field texels. The system may select one of the mipmap levels based on a size of the sampling pixel region and a size of a texel in the selected mipmap level. The system may then compute a color value for the sampling pixel region using the selected mipmap level.

Claims (53)

1. A method comprising:

determining, by a computing system, a sampling pixel region within a texture, wherein the texture is associated with mipmap levels having different resolutions of the texture, wherein the mipmap levels include at least a first mipmap level defined by color texels and a second mipmap level defined by distance-field texels;

selecting, by the computing system, one of the mipmap levels based on a size of the sampling pixel region and a size of a texel in the selected mipmap level; and

computing, by the computing system, a color value for the sampling pixel region using the selected mipmap level.

2. The method of claim 1 , further comprising:

determining that the selected mipmap level is defined by color texels; and

selecting a first rendering logic configured to process color texels;

wherein the color value is computed using the selected first rendering logic.

3. The method of claim 2 , further comprising:

determining a second sampling pixel region within the texture;

selecting, from the mipmap levels, the second mipmap level defined by distance-field texels based on a size of the second sampling pixel region and a size of each of the distance-field texels in the second mipmap level;

selecting a second rendering logic configured to process distance-field texels; and

computing a second color value for the second sampling pixel region using the selected second rendering logic and the second mipmap level.

4. The method of claim 1 , wherein the selected mipmap level is selected based on a ratio between the size of the sampling pixel region and the size of each texel in the selected mipmap level.

5. The method of claim 1 , wherein the first mipmap level defined by color texels has a lower resolution than the second mipmap level defined by distance-field texels.

6. The method of claim 1 , wherein the first mipmap level defined by color texels has a lowest resolution in the mipmap levels and the second mipmap level defined by distance-field texels has a highest resolution in the mipmap levels.

7. The method of claim 1 , wherein segments of two edges appearing in the first mipmap level are separated by less than two of the color texels.

8. The method of claim 1 , further comprising:

generating the mipmap levels using the texture.

9. A system comprising:

one or more processors; and

one or more computer-readable non-transitory storage media coupled to one or more of the processors and comprising instructions operable when executed by one or more of the processors to cause the system to:

determine a sampling pixel region within a texture, wherein the texture is associated with mipmap levels having different resolutions of the texture, wherein the mipmap levels include at least a first mipmap level defined by color texels and a second mipmap level defined by distance-field texels;

select one of the mipmap levels based on a size of the sampling pixel region and a size of a texel in the selected mipmap level; and

compute a color value for the sampling pixel region using the selected mipmap level.

10. The system of claim 9 , wherein the processors are further operable when executing the instructions to:

determine that the selected mipmap level is defined by color texels; and

select a first rendering logic configured to process color texels;

wherein the color value is computed using the selected first rendering logic.

11. The system of claim 10 , wherein the processors are further operable when executing the instructions to:

determine a second sampling pixel region within the texture;

select, from the mipmap levels, the second mipmap level defined by distance-field texels based on a size of the second sampling pixel region and a size of each of the distance-field texels in the second mipmap level;

select a second rendering logic configured to process distance-field texels; and

compute a second color value for the second sampling pixel region using the selected second rendering logic and the second mipmap level.

12. The system of claim 9 , wherein the selected mipmap level is selected based on a ratio between the size of the sampling pixel region and the size of each texel in the selected mipmap level.

13. The system of claim 9 , wherein the first mipmap level defined by color texels has a lower resolution than the second mipmap level defined by distance-field texels.

14. The system of claim 9 , wherein the first mipmap level defined by color texels has a lowest resolution in the mipmap levels and the second mipmap level defined by distance-field texels has a highest resolution in the mipmap levels.

15. One or more computer-readable non-transitory storage media embodying software that is operable when executed by one or more processors to:

determine a sampling pixel region within a texture, wherein the texture is associated with mipmap levels having different resolutions of the texture, wherein the mipmap levels include at least a first mipmap level defined by color texels and a second mipmap level defined by distance-field texels;

select one of the mipmap levels based on a size of the sampling pixel region and a size of a texel in the selected mipmap level; and

compute a color value for the sampling pixel region using the selected mipmap level.

16. The media of claim 15 , wherein the one or more processors are further operable when executing the instructions to:

determine that the selected mipmap level is defined by color texels; and

select a first rendering logic configured to process color texels;

wherein the color value is computed using the selected first rendering logic.

17. The media of claim 16 , wherein the one or more processors are further operable when executing the instructions to:

determine a second sampling pixel region within the texture;

select, from the mipmap levels, the second mipmap level defined by distance-field texels based on a size of the second sampling pixel region and a size of each of the distance-field texels in the second mipmap level;

select a second rendering logic configured to process distance-field texels; and

compute a second color value for the second sampling pixel region using the selected second rendering logic and the second mipmap level.

18. The media of claim 15 , wherein the selected mipmap level is selected based on a ratio between the size of the sampling pixel region and the size of each texel in the selected mipmap level.

19. The media of claim 15 , wherein the first mipmap level defined by color texels has a lower resolution than the second mipmap level defined by distance-field texels.

20. The media of claim 15 , wherein the first mipmap level defined by color texels has a lowest resolution in the mipmap levels and the second mipmap level defined by distance-field texels has a highest resolution in the mipmap levels.

Assignments (2)
CHANGE OF NAME Recorded Jul 6, 2022
From: FACEBOOK TECHNOLOGIES, LLC
To: META PLATFORMS TECHNOLOGIES, LLC
Reel/Frame 060591/0848 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2019
From: SEILER, LARRY; NANKERVIS, ALEXANDER; JOHNSTON, JOHN ADRIAN ARTHUR
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 051013/0717 →
Continuity (2)
Provisional Application 62753676 · Oct 31, 2018
Related Publication 20200134880A1 · Apr 30, 2020