IP Library Granted Patent US 11,843,793
Granted Patent B2
US 11,843,793 · App. 18/099,095 · Granted Dec 12, 2023

Texture decompression techniques

Inventors: Konstantine Iourcha (Santa Clara, CA); Andrew S.C. Pomianowski (Bellevue, WA)
Assignee: ATI Technologies ULC
H04N19/426G06T9/00H04N19/119H04N19/154H04N19/176H04N19/182H04N19/46H04N19/54H04N19/60H04N19/96
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,843,793
App. No.
18/099,095
Granted
Dec 12, 2023
Kind
B2
Abstract

A system and method for texture decompression is described. The method comprises receiving a first compressed texture block including two or more disjoint subsets of data and decompressing the first compressed texture block. The decompressing includes decompressing the two or more disjoint subsets in the first compressed texture block to form texels. The two or more disjoint subsets include a first disjoint subset comprising a first set of color endpoints and a second disjoint subset comprising a second set of color endpoints.

Claims (65)

1. A computer processing system comprising:

a graphics processor unit including at least one rendering pipeline; and

a memory,

wherein the graphics processor unit is adapted to:

receive a first compressed texture block including two or more disjoint subsets of data, wherein each of the two or more disjoint subsets represent a configuration; and

decompress, by the at least one rendering pipeline, the first compressed texture block,

wherein the decompressing includes:

decompressing the two or more disjoint subsets in the first compressed texture block to form texels,

wherein the two or more disjoint subsets include a first disjoint subset comprising a first set of color endpoints and a respective value for each texel of the first disjoint subset and a second disjoint subset comprising a second set of color endpoints and a respective value for each texel of the second disjoint subset,

wherein a color for a texel of the first disjoint subset is derived using the first set of color endpoints and the respective value for the texel of the first disjoint subset and a color for a texel of the second disjoint subset is derived using the second set of color endpoints and the respective value for the texel of the second disjoint subset.

2. The system of claim 1 , wherein the configuration comprises a size, and a size of the first disjoint subset is different than a size of the second disjoint subset.

3. The system of claim 1 , wherein the configuration comprises a shape, and a shape of the first disjoint subset is different than a shape of the second disjoint subset.

4. The system of claim 3 , wherein the shape is a non-rectangular shape.

5. The system of claim 1 , wherein a first portion of the first disjoint subset is separated from a second portion of the first disjoint subset by at least a portion of the second disjoint subset.

6. The system of claim 1 , wherein a number of texels formed decompressing the first disjoint subset is different than a number of texels formed decompressing the second disjoint subset.

7. The system of claim 1 , wherein a compressed texture comprises a plurality of compressed texture blocks including the first compressed texture block.

8. The system of claim 1 , wherein the graphics processor unit is further adapted to apply the decompressed first compressed texture block to a rendered surface for display.

9. The system of claim 8 , further comprising a monitor, wherein the graphics processor unit is further adapted to output the rendered surface for display on the monitor.

10. The system of claim 1 , wherein the graphics processor unit is further adapted to:

receive a second compressed texture block including two or more of disjoint subsets; and

decompress, by the at least one rendering pipeline, the second compressed texture block,

wherein the first compressed texture block and the second compressed texture block are part of a compressed texture.

11. The system of claim 10 , wherein a configuration of the two or more disjoint subsets of the second compressed texture block is different than the configuration of the two or more disjoint subsets of the first compressed texture block.

12. The system of claim 10 , wherein the first compressed texture block comprises a number of disjoint subsets that is different than a number of disjoint subsets of the second compressed texture block.

13. The system of claim 1 , wherein the decompressing the two or more disjoint subsets in the first compressed texture block to form texels includes interpolating between the first set of color endpoints using the respective value for each texel of the first disjoint subset and interpolating between the second set of color endpoints using the respective value for each texel of the second disjoint subset.

14. The system of claim 1 , wherein the memory is adapted to store the first compressed texture block prior to the first compressed texture block being decompressed by the graphics processor unit.

15. A method for use in a graphics processor unit including at least one rendering pipeline, the method comprising:

receiving a first compressed texture block including two or more disjoint subsets of data, wherein each of the two or more disjoint subsets represent a configuration; and

decompressing the first compressed texture block,

wherein the decompressing includes:

decompressing the two or more disjoint subsets in the first compressed texture block to form texels,

wherein the two or more disjoint subsets include a first disjoint subset comprising a first set of color endpoints and a respective value for each texel of the first disjoint subset and a second disjoint subset comprising a second set of color endpoints and a respective value for each texel of the second disjoint subset,

wherein a color for a texel of the first disjoint subset is derived using the first set of color endpoints and the respective value for the texel of the first disjoint subset and a color for a texel of the second disjoint subset is derived using the second set of color endpoints and the respective value for the texel of the second disjoint subset.

16. The method of claim 15 , wherein the configuration comprises a size, and a size of the first disjoint subset is different than a size of the second disjoint subset.

17. The method of claim 15 , wherein the configuration comprises a shape, and a shape of the first disjoint subset is different than a shape of the second disjoint subset.

18. The method of claim 17 , wherein the shape is a non-rectangular shape.

19. The method of claim 15 , wherein a first portion of the first disjoint subset is separated from a second portion of the first disjoint subset by at least a portion of the second disjoint subset.

20. The method of claim 15 , wherein a number of texels formed decompressing the first disjoint subset is different than a number of texels formed decompressing the second disjoint subset.

21. The method of claim 15 , wherein a compressed texture comprises a plurality of compressed texture blocks including the first compressed texture block.

22. The method of claim 15 , further comprising:

applying the decompressed first compressed texture block to a rendered surface for display.

23. The method of claim 22 , further comprising outputting the rendered surface for display on a monitor.

24. The method of claim 15 , further comprising:

receiving a second compressed texture block including two or more of disjoint subsets; and

decompressing the second compressed texture block,

wherein the first compressed texture block and the second compressed texture block are part of a compressed texture.

25. The method of claim 24 , wherein a configuration of the two or more disjoint subsets of the second compressed texture block is different than the configuration of the two or more disjoint subsets of the first compressed texture block.

26. The method of claim 24 , wherein the first compressed texture block comprises a number of disjoint subsets that is different than a number of disjoint subsets of the second compressed texture block.

27. The method of claim 26 , wherein the decompressing the two or more disjoint subsets in the first compressed texture block to form texels includes interpolating between the first set of color endpoints using the respective value for each texel of the first disjoint subset and interpolating between the second set of color endpoints using the respective value for each texel of the second disjoint subset.

28. The method of claim 15 , further comprising storing the first compressed texture block in a memory prior to the first compressed texture block being decompressed by the graphics processor unit.

29. A computer processing system comprising:

a graphics processor unit including at least one rendering pipeline; and

a memory,

wherein the graphics processor unit is configured to:

receive a first compressed texture block including two or more disjoint subsets of data, wherein at least two of the two or more disjoint subsets of data have a different size; and

decompress, by the at least one rendering pipeline, the first compressed texture block,

wherein the decompressing includes:

decompressing the two or more disjoint subsets in the first compressed texture block to form texels,

wherein the two or more disjoint subsets include a first disjoint subset comprising a first set of color endpoints and a second disjoint subset comprising a second set of color endpoints.

30. A method for use in a graphics processor unit including at least one rendering pipeline, the method comprising:

receiving a first compressed texture block including two or more disjoint subsets of data, wherein at least two of the two or more disjoint subsets of data have a different size; and

decompressing the first compressed texture block,

wherein the decompressing includes:

decompressing the two or more disjoint subsets in the first compressed texture block to form texels,

wherein the two or more disjoint subsets include a first disjoint subset comprising a first set of color endpoints and a second disjoint subset comprising a second set of color endpoints.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2024
From: ATI TECHNOLOGIES ULC
To: ONESTA IP, LLC
Reel/Frame 069379/0556 →
Continuity (5)
Continuation 17514164 · Oct 29, 2021
Continuation 16257500 · Jan 25, 2019
Continuation 15237134 · Aug 15, 2016
Continuation 11513190 · Aug 31, 2006
Related Publication 20230156205A1 · May 18, 2023