IP Library Granted Patent US 11,138,747
Granted Patent B1
US 11,138,747 · App. 16/657,820 · Granted Oct 5, 2021

Interpolation optimizations for a display engine for post-rendering processing

Inventor: Larry Seiler (Redmond, WA)
Assignee: Facebook Technologies, LLC
G06T7/40G06T7/90G06T15/04G06T15/503
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 11,138,747
App. No.
16/657,820
Granted
Oct 5, 2021
Kind
B1
Abstract

In one embodiment, a method includes, by a computing system, determining a sample point within a texture. The sample point corresponds to a specified output position in a display system. The method includes accessing texels in the texture that are used for determining properties of the sample point. Each identified texel includes a color and a transparency level. The method includes determining an interpolation optimization by comparing the colors and transparency levels of the identified texels. The method includes determining, according to the determined interpolation optimization, a pixel color and a pixel transparency level for the sample point using the identified texels. At least one of the pixel color or the pixel transparency level is determined by copying the colors or transparency levels of the texels, respectively, without performing interpolation. The method includes providing the determined pixel color and the determined pixel transparency level for the sample point for display.

Claims (76)

1. A method comprising, by a computing system:

determining a sample point within a texture, wherein the sample point corresponds to a specified output position in a display system;

identifying texels in the texture that are used for determining properties of the sample point, wherein each identified texel comprises a color and a transparency level;

determining an interpolation optimization by comparing the colors and transparency levels of the identified texels;

determining, according to the determined interpolation optimization, a pixel color and a pixel transparency level for the sample point using the identified texels, wherein at least one of the pixel color or the pixel transparency level is determined by copying the colors or transparency levels of the identified texels, respectively, without performing interpolation; and

providing the determined pixel color and the determined pixel transparency level for the sample point for display.

2. The method of claim 1 , wherein determining the interpolation optimization by comparing the color and transparency levels of the identified texels comprises:

identifying a particular value of the color or the transparency level of each identified texel that is associated with a candidate interpolation optimization; and

comparing the identified values of each identified texel to identify patterns of color or transparency level values associated with the candidate interpolation optimization.

3. The method of claim 1 , wherein the transparency level of each identified texel is clear; and

wherein determining, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels comprises setting the transparency level for the sample point to clear.

4. The method of claim 1 , wherein the transparency level of each identified texel is opaque; and

wherein determining, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels comprises:

setting the pixel transparency level for the sample point to opaque; and

determining the pixel color for the sample point by interpolating the colors of the identified texels.

5. The method of claim 1 , wherein the color of each identified texel is black; and

wherein determining, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels comprises:

setting the pixel transparency level for the sample point to opaque; and

setting the pixel color for the sample point to black.

6. The method of claim 1 , wherein the transparency level of each identified texel is opaque and the color of each identified texel is identical; and

wherein determining, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels comprises:

setting the transparency level for the sample point to opaque; and

setting the pixel color for the sample point to the color of the identified texels.

7. The method of claim 1 , further comprising blending the determined pixel color by:

designating the determined pixel color as a source color;

identifying a destination color to be blended with the source color;

determining a color-blending operation and a color-blending mode; and

blending a color channel and an alpha channel of the source color and a color channel and an alpha channel of the destination color by performing the color-blending operation in the determined color-blending mode.

8. The method of claim 7 , wherein identifying the destination color comprises:

determining a pixel position of the source color; and

designating a color associated with the pixel position at a previous time as the destination color.

9. The method of claim 8 , wherein the color associated with the pixel position at the previous time is a result of a previous blend operation associated with the pixel position.

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

determine a sample point within a texture, wherein the sample point corresponds to a specified output position in a display system;

identify texels in the texture that are used for determining properties of the sample point, wherein each identified texel comprises a color and a transparency level;

determine an interpolation optimization by comparing the colors and transparency levels of the identified texels;

determine, according to the determined interpolation optimization, a pixel color and a pixel transparency level for the sample point using the identified texels, wherein at least one of the pixel color or the pixel transparency level is determined by copying the colors or transparency levels of the identified texels, respectively, without performing interpolation; and

provide the determined pixel color and the determined pixel transparency level for the sample point for display.

11. The one or more computer-readable non-transitory storage media of claim 10 , wherein the software operable to determine the interpolation optimization by comparing the color and transparency levels of the identified texels is further operable to:

identify a particular value of the color or the transparency level of each identified texel that is associated with a candidate interpolation optimization; and

compare the identified values of each identified texel to identify patterns of color or transparency level values associated with the candidate interpolation optimization.

12. The one or more computer-readable non-transitory storage media of claim 10 , wherein the transparency level of each identified texel is clear; and

wherein the software operable to determine, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels is further operable to set the transparency level for the sample point to clear.

13. The one or more computer-readable non-transitory storage media of claim 10 , wherein the transparency level of each identified texel is opaque; and

wherein the software operable to determine, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels is further operable to:

set the pixel transparency level for the sample point to opaque; and

determine the pixel color for the sample point by interpolating the colors of the identified texels.

14. The one or more computer-readable non-transitory storage media of claim 10 , wherein the color of each identified texel is black; and

wherein the software operable to determine, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels is further operable to:

set the pixel transparency level for the sample point to opaque; and

set the pixel color for the sample point to black.

15. The one or more computer-readable non-transitory storage media of claim 10 , wherein the transparency level of each identified texel is opaque and the color of each identified texel is identical; and

wherein the software operable to determine, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels is further operable to:

set the transparency level for the sample point to opaque; and

set the pixel color for the sample point to the color of the identified texels.

16. 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 sample point within a texture, wherein the sample point corresponds to a specified output position in a display system;

identify texels in the texture that are used for determining properties of the sample point, wherein each identified texel comprises a color and a transparency level;

determine an interpolation optimization by comparing the colors and transparency levels of the identified texels;

determine, according to the determined interpolation optimization, a pixel color and a pixel transparency level for the sample point using the identified texels, wherein at least one of the pixel color or the pixel transparency level is determined by copying the colors or transparency levels of the identified texels, respectively, without performing interpolation; and

provide the determined pixel color and the determined pixel transparency level for the sample point for display.

17. The system of claim 16 , wherein the instructions operable to cause the system to determine the interpolation optimization by comparing the color and transparency levels of the identified texels are further operable to cause the system to:

identify a particular value of the color or the transparency level of each identified texel that is associated with a candidate interpolation optimization; and

compare the identified values of each identified texel to identify patterns of color or transparency level values associated with the candidate interpolation optimization.

18. The system of claim 16 , wherein the transparency level of each identified texel is clear; and

wherein the instructions operable to cause the system to determine, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels are further operable when executed by one or more of the processors to cause the system to set the transparency level for the sample point to clear.

19. The system of claim 16 , wherein the transparency level of each identified texel is opaque; and

wherein the instructions operable to cause the system to determine, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels are further operable when executed by one or more of the processors to cause the system to:

set the pixel transparency level for the sample point to opaque; and

determine the pixel color for the sample point by interpolating the colors of the identified texels.

20. The system of claim 16 , wherein the color of each identified texel is black; and

wherein the instructions operable to cause the system to determine, according to the determined interpolation optimization, the pixel color and the pixel transparency level for the sample point using the identified texels are further operable when executed by one or more of the processors to cause the system to:

set the pixel transparency level for the sample point to opaque; and

set the pixel color for the sample point to black.

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 Oct 25, 2019
From: SEILER, LARRY
To: FACEBOOK TECHNOLOGIES, LLC
Reel/Frame 050834/0055 →
Continuity (1)
Provisional Application 62755332 · Nov 2, 2018
Cited By (2)
US 12,333,632 US 12,341,941