Texture Compression
US-2020051285-A1 · Feb 13, 2020 · US
US12028539B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12028539-B2 |
| Application number | US-202318318953-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 17, 2023 |
| Priority date | Apr 28, 2020 |
| Publication date | Jul 2, 2024 |
| Grant date | Jul 2, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
The present disclosure relates to systems, methods, and non-transitory computer-readable media to enhance texture image delivery and processing at a client device. For example, the disclosed systems can utilize a server-side compression combination that includes, in sequential order, a first compression pass, a decompression pass, and a second compression pass. By applying this compression combination to a texture image at the server-side, the disclosed systems can leverage both GPU-friendly and network-friendly image formats. For example, at a client device, the disclosed system can instruct the client device to execute a combination of decompression-compression passes on a GPU-network-friendly image delivered over a network connection to the client device. In so doing, client device can generate a tri-pass-compressed-texture from a decompressed image comprising texels with color palettes based on previously reduced color palettes from the first compression pass at the server-side, which reduces computational overhead and increases performance speed.
Opening claim text (preview).
What is claimed is: 1. A non-transitory computer-readable medium storing instructions that, when executed by at least one processor, cause the at least one processor to perform operations comprising: receiving a dual-pass-compressed-texture image generated by a first compression technique based on reduced color palettes defined according to a number of endpoint pixel colors for each texel in a texture image and blending color values for one or more intermediary pixel colors between endpoint pixel colors in each texel; generating a decompressed-texture image from the dual-pass-compressed-texture image by decoding a second compression technique applied to generate the dual-pass-compressed-texture image, the decompressed-texture image comprising a first plurality of texels with respective color palettes based on the reduced color palettes generated by the first compression technique; and generating a tri-pass-compressed-texture image from the decompressed-texture image utilizing a third compression algorithm to generate a second plurality of texels respectively comprising pixels having a number of colors equal to or less than a texel dimension of texels of the first plurality of texels. 2. The non-transitory computer-readable medium of claim 1 , wherein generating the tri-pass-compressed-texture image utilizing the third compression algorithm comprises determining a number of colors of pixels in each texel of the first plurality of texels. 3. The non-transitory computer-readable medium of claim 2 , wherein generating the tri-pass-compressed-texture image utilizing the third compression algorithm comprises: determining the number of colors of pixels in at least one texel of the first plurality of texels is equal to or less than the texel dimension; selecting endpoint color values within the at least one texel that define a line having a least distance to intermediate color values; and generating a color palette for the at least one texel based on the selected endpoint color values. 4. The non-transitory computer-readable medium of claim 2 , wherein generating the tri-pass-compressed-texture image utilizing the third compression algorithm comprises: determining the number of colors of pixels in at least one texel of the first plurality of texels exceeds the texel dimension; and applying a color reduction algorithm to the at least one texel to cluster the colors of the at least one texel into the number of colors equal to or less than the texel dimension. 5. The non-transitory computer-readable medium of claim 4 , wherein applying the color reduction algorithm to the at least one texel comprises modifying one or more color values until mapping to a shared color value. 6. The non-transitory computer-readable medium of claim 5 , wherein modifying the one or more color values until mapping to the shared color value comprises iteratively applying rounded integer division to the one or more color values. 7. The non-transitory computer-readable medium of claim 1 , wherein generating the tri-pass-compressed-texture image utilizing the third compression algorithm comprises applying one or more of DXT, BCx, or ASTC to the decompressed-texture image. 8. The non-transitory computer-readable medium of claim 1 , wherein generating the tri-pass-compressed-texture image further comprises causing each texel of the second plurality of texels to be independently accessible by a graphics processing unit. 9. The non-transitory computer-readable medium of claim 1 , wherein: the at least one processor comprises a central processing unit (CPU) and a graphics processing unit; and the operations further comprise: receiving the dual-pass-compressed-texture image at the CPU; and providing the tri-pass-compressed-texture image from the CPU to the graphics processing unit. 10. The non-transitory computer-readable medium of claim 1 , wherein generating the decompressed-texture image from the dual-pass-compressed-texture image comprises decoding one of HEIC, PNG, WebP, or JPEG compression techniques applied to generate the dual-pass-compressed-texture image. 11. A method comprising: receiving a dual-pass-compressed-texture image generated by a first compression technique based on reduced color palettes defined according to a number of endpoint pixel colors for each texel in a texture image and blending color values for one or more intermediary pixel colors between endpoint pixel colors in each texel; generating a decompressed-texture image from the dual-pass-compressed-texture image by decoding a second compression technique applied to generate the dual-pass-compressed-texture image, the decompressed-texture image comprising a first plurality of texels with respective color palettes based on the reduced color palettes generated by the first compression technique; and generating a tri-pass-compressed-texture image from the decompressed-texture image utilizing a third compression algorithm to generate a second plurality of texels respectively comprising pixels having a number of colors equal to or less than a texel dimension of texels of the first plurality of texels. 12. The method of claim 11 , wherein generating the tri-pass-compressed-texture image utilizing the third compression algorithm comprises: determining the number of colors of pixels in at least one texel of the first plurality of texels is equal to or less than the texel dimension; selecting endpoint color values within the at least one texel that define a line having a least distance to intermediate color values; and generating a color palette for the at least one texel based on the selected endpoint color values. 13. The method of claim 11 , wherein generating the tri-pass-compressed-texture image utilizing the third compression algorithm comprises: determining the number of colors of pixels in at least one texel of the first plurality of texels exceeds the texel dimension; and applying a color reduction algorithm to the at least one texel to cluster the colors of the at least one texel into the number of colors equal to or less than the texel dimension. 14. The method of claim 13 , wherein applying the color reduction algorithm to the at least one texel comprises modifying one or more color values until mapping to a shared color value by iteratively applying rounded integer division to the one or more color values. 15. The method of claim 11 , wherein generating the tri-pass-compressed-texture image utilizing the third compression algorithm comprises applying one or more of DXT, BCx, or ASTC to the decompressed-texture image. 16. A system comprising: one or more memory devices comprising texture images; and one or more processing devices coupled to the one or more memory devices, the one or more processing devices to perform operations comprising: receiving a dual-pass-compressed-texture image generated by a first compression technique based on reduced color palettes defined according to a number of endpoint pixel colors for each texel in a texture image and blending color values for one or more intermediary pixel colors between endpoint pixel colors in each texel; generating a decompressed-texture image from the dual-pass-compressed-texture image by decoding a second compression technique applied to generate the dual-pass-compressed-texture image, the decompressed-texture image comprising a first plurality of texels with respective color palettes based on the reduced color palettes generated by the first compression technique; and generating a tri-pass-compressed-texture image from the decompressed-texture image utilizing a third compression
the region being a block, e.g. a macroblock · CPC title
the unit being a colour or a chrominance component · CPC title
using pre-processing or post-processing specially adapted for video compression · CPC title
the adaptation method, adaptation tool or adaptation type being iterative or recursive · CPC title
using transform coding · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.