Multi-mode texture compression algorithm
First Claim
Patent Images
1. A multi-mode texture decompression method for use during graphics processing, comprising;
- (a) sending a request for compressed texture data to memory;
(b) receiving the compressed texture data from the memory;
(c) identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and
(d) decompressing the compressed texture data in accordance with the identified compression algorithm;
wherein, prior to sending the request, the texture data is compressed utilizing each of the plurality of compression algorithms, the most favorable compressed texture data is selected utilizing a comparison operation, and the most favorable compressed texture data is stored in the memory;
wherein the most favorable compressed texture data provides the most accurate replication of an original version of the texture data.
1 Assignment
0 Petitions
Accused Products
Abstract
A multi-mode texture compression algorithm is provided for effective compression and decompression texture data during graphics processing. Initially, a request is sent to memory for compressed texture data. Such compressed texture data is then received from the memory in response to the request. At least one of a plurality of compression algorithms associated with the compressed texture data is subsequently identified. Thereafter, the compressed texture data is decompressed in accordance with the identified compression algorithm.
-
Citations
26 Claims
-
1. A multi-mode texture decompression method for use during graphics processing, comprising;
-
(a) sending a request for compressed texture data to memory; (b) receiving the compressed texture data from the memory; (c) identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and (d) decompressing the compressed texture data in accordance with the identified compression algorithm; wherein, prior to sending the request, the texture data is compressed utilizing each of the plurality of compression algorithms, the most favorable compressed texture data is selected utilizing a comparison operation, and the most favorable compressed texture data is stored in the memory; wherein the most favorable compressed texture data provides the most accurate replication of an original version of the texture data. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A multi-mode texture decompression method for use during graphics processing, comprising:
-
(a) sending a request for compressed texture data to memory; (b) receiving the compressed texture data from the memory; (c) identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and (d) decompressing the compressed texture data in accordance with the identified compression algorithm; wherein at least one of the compression algorithms represents a 4×
8 block of texels utilizing three bits per texel, each 4×
8 block of texels including two 15-bit colors stored in an RGB 555 format and five additional colors created by interpolating between the two 15-bit colors stored in the RGB 555 format to form an 8-entry lookup table, where an eighth 15-bit color is defined to be a transparent color, and a 3-bit index is used to determine which 15-bit color from the lookup table is used for each texel in the 4×
8 block of texels.
-
-
10. A multi-mode texture decompression method for use during graphics processing, comprising:
-
(a) sending a request for compressed texture data to memory; (b) receiving the compressed texture data from the memory; (c) identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and (d) decompressing the compressed texture data in accordance with the identified compression algorithm; wherein at least one of the compression algorithms represents a 4×
8 block of texels by two bits per texel, each 4×
8 block of texels including three 20-bit colors stored in a 5555 format, where a first and second one of the 20-bit colors are used for primary colors of a left 4×
4 sub-block of the 4×
8 block of texels, and a second and third one of the colors are used for primary colors of the right 4×
4 sub-block of the 4×
8 block of texels, where two additional 20-bit colors are created in each 4×
4 sub-block of texels by interpolating between the 20-bit colors associated with the corresponding 4×
4 sub-block of texels, where a 2-bit index is adapted for being used to determine which of the four 20-bit colors is assigned to each texel, and a lookup table is used to determine which 20-bit color is applied to each texel.
-
-
11. A multi-mode texture decompression computer program product embodied on a computer readable medium for use during graphics processing, comprising;
-
(a) computer code for sending a request for compressed texture data to memory; (b) computer code for receiving the compressed texture data from the memory; (c) computer code for identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and (d) computer code for decompressing the compressed texture data in accordance with the identified compression algorithm; wherein, prior to sending the request, the texture data is compressed utilizing each of the plurality of compression algorithms, the most favorable compressed texture data is selected utilizing a comparison operation, and the most favorable compressed texture data is stored in the memory; wherein the most favorable compressed texture data provides the most accurate replication of an original version of the texture data. - View Dependent Claims (12, 13, 16)
-
-
14. A multi-mode texture decompression system for use during graphics processing, comprising;
-
(a) a texture fetch module adapted for sending a request for compressed texture data to memory, and receiving the compressed texture data from the memory; (b) a format detection module adapted for identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and (c) a plurality of decompression modules coupled between the texture fetch module and the format detection module, the decompression modules adapted for decompressing the compressed texture data in accordance with the compression algorithm identified by the format detection module; wherein, prior to sending the request, the texture data is compressed utilizing each of the plurality of compression algorithms, the most favorable compressed texture data is selected utilizing a comparison operation, and the most favorable compressed texture data is stored in the memory; wherein the most favorable compressed texture data provides the most accurate replication of an original version of the texture data. - View Dependent Claims (15, 17, 18)
-
-
19. A multi-mode texture decompression system for use during graphics processing, comprising:
-
(a) a texture fetch module adapted for sending a request for compressed texture data to memory, and receiving the compressed texture data from the memory; (b) a format detection module adapted for identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and (c) a plurality of decompression modules coupled between the texture fetch module and the format detection module, the decompression modules adapted for decompressing the compressed texture data in accordance with the compression algorithm identified by the format detection module; wherein at least one of the compression algorithms represents a 4×
8 block of texels utilizing three bits per texel, each 4×
8 block of texels including two 15-bit colors stored in an RGB 555 format and five additional colors created by interpolating between the two 15-bit colors stored in the RGB 555 format to form an 8-entry lookup table, where an eighth 15-bit color is defined to be a transparent color, and a 3-bit index is used to determine which 15-bit color from the lookup table is used for each texel in the 4×
8 block of texels.
-
-
20. A multi-mode texture decompression system for use during graphics processing, comprising:
-
(a) a texture fetch module adapted for sending a request for compressed texture data to memory, and receiving the compressed texture data from the memory; (b) a format detection module adapted for identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and
(c) a plurality of decompression modules, coupled between the texture fetch module and the format detection module, the decompression modules adapted for decompressing the compressed texture data in accordance with the compression algorithm identified by the format detection module;wherein at least one of the compression algorithms represents a 4×
8 block of texels by two bits per texel, each 4×
8 block of texels including three 20-bit colors stored in a 5555 format, where a first and second one of the 20-bit colors are used for primary colors of a left 4×
4 sub-block of the 4×
8 block of texels, and a second and third one of the colors are used for primary colors of the right 4×
4 sub-block of the 4×
8 block of texels, where two additional 20-bit colors are created in each 4×
4 sub-block of texels by interpolating between the 20-bit colors associated with the corresponding 4×
4 sub-block of texels, where a 2-bit index is adapted for being used to determine which of the four 20-bit colors is assigned to each texel, and a lookup table is used to determine which 20-bit color is applied to each texel.
-
-
21. A multi-mode texture decompression system for use during graphics processing, comprising;
-
(a) means for sending a request for compressed texture data to memory; (b) means for receiving the compressed texture data from the memory; (c) means for identifying at least one of a plurality of compression algorithms associated with the compressed texture data; and (d) means for decompressing the compressed texture data in accordance with the identified compression algorithm; wherein, prior to sending the request, the texture data is compressed utilizing each of the plurality of compression algorithms the most favorable compressed texture data is selected utilizing a comparison operation, and the most favorable compressed texture data is stored in the memory; wherein the most favorable compressed texture data provides the most accurate replication of an original version of the texture data.
-
-
22. A multi-mode texture compression method for use during graphics processing, comprising;
-
(a) compressing texture data utilizing each of a plurality of compression algorithms in parallel; (b) selecting the most favorable compressed texture data using a comparison operation; (c) storing the most favorable compressed texture data in memory; (d) storing a mode bit with the most favorable compressed texture data in the memory; (e) sending a request for the compressed texture data to the memory; (f) receiving the compressed texture data from the memory; (g) determining the mode bit associated with the received compressed texture data; (h) identifying at least one of the plurality of compression algorithms associated with the compressed texture data based on the mode bit; and (i) decompressing the compressed texture data in accordance with the identified compression algorithm; wherein the most favorable compressed texture data provides the most accurate replication of an original version of the texture data.
-
-
23. A multi-mode texture compression method for use during graphics processing, comprising;
-
(a) compressing texture data utilizing each of a plurality of compression algorithms in parallel; (b) selecting the most favorable compressed texture data using a comparison operation; (c) storing the most favorable compressed texture data in memory; and (d) storing a mode bit with the most favorable compressed texture data in the memory; (e) wherein the mode bit associated with the received compressed texture data is capable of being used to identify at least one of the plurality of compression algorithms associated with the compressed texture data such that the compressed texture data is capable of being decompressed in accordance with the identified compression algorithm; (f) wherein the most favorable compressed texture data provides the most accurate replication of an original version of the texture data.
-
-
24. A data structure stored in memory for compressing texture data representing a Y×
- Z block of texels utilizing three bits per texel, each Y×
Z block of texels including two X-bit colors stored in a predetermined format and five additional colors created by interpolating between the two X-bit colors stored in the predetermined format to form a lookup table, where an eighth X-bit color is defined to be a transparent color, and a W-bit index is used to determine which X-bit color from the lookup table is used for each texel in the Y×
Z block of texels, wherein the compressed texture data is used during graphics processing.
- Z block of texels utilizing three bits per texel, each Y×
-
25. A data structure stored in memory for compressing texture data representing a Y×
- Z block of texels utilizing two bits per texel only if the texels are opaque, each Y×
Z block of texels including four X-bit colors in a predetermined format to form a lookup table, a W-bit index is adapted for being used to determine which of the four X-bit colors is assigned to each texel, wherein the compressed texture data is used during graphics processing.
- Z block of texels utilizing two bits per texel only if the texels are opaque, each Y×
-
26. A data structure stored in memory for compressing texture data representing a Y×
- Z block of texels by two bits per texel, each Y×
Z block of texels including three X-bit colors stored in a predetermined format, where a first and second one of the X-bit colors are used for primary colors of a left Y×
Y sub-block of the Y×
Z block of texels, and a second and third one of the colors are used for primary colors of the right Y×
Y sub-block of the Y×
Z block of texels, where two additional X-bit colors are created in each Y×
Y sub-block of texels by interpolating between the X-bit colors associated with the corresponding Y×
Y sub-block of texels, where a W-bit index is adapted for being used to determine which of the four X-bit colors is assigned to each texel, and a lookup table is used to determine which X-bit color is applied to each texel, wherein the compressed texture data is used during graphics processing.
- Z block of texels by two bits per texel, each Y×
Specification