Revert "util: fix DXT1 RGBA texture compression if the source color is (0, 0, 0, 0)"
authorDave Airlie <airlied@redhat.com>
Wed, 16 Feb 2011 06:13:58 +0000 (16:13 +1000)
committerDave Airlie <airlied@redhat.com>
Wed, 16 Feb 2011 06:13:58 +0000 (16:13 +1000)
This reverts commit 6e7d782da506da233b2ac695b022ac393e1c719e.

Oops, I just had this locally for testing and forgot to remove it before pushing.

src/gallium/auxiliary/util/u_format_s3tc.c

index 31288e3f0ce1c91ee64ad5e86dae295ae732718d..bb989c29d81869c6ea4fdff7205d5c7c97ed6e14 100644 (file)
@@ -416,20 +416,8 @@ util_format_dxt1_rgba_pack_rgba_8unorm(uint8_t *dst_row, unsigned dst_stride,
          uint8_t tmp[4][4][4];  /* [bh][bw][comps] */
          for(j = 0; j < bh; ++j) {
             for(i = 0; i < bw; ++i) {
-               const uint8_t *srcp = &src[(y + j)*src_stride/sizeof(*src) + (x + i)*comps];
-               /* Workaround for a bug in libtxc_dxtn.
-                * If the color is (0,0,0,0), it is compressed as (0,0,0,1),
-                * which is incorrect. Any other (x,y,z,0) color is compressed
-                * correctly as (0,0,0,0), so let's use (1,0,0,0). */
-               if (srcp[0] == 0 && srcp[1] == 0 && srcp[2] == 0 && srcp[3] == 0) {
-                  tmp[j][i][0] = 255;
-                  tmp[j][i][1] = 0;
-                  tmp[j][i][2] = 0;
-                  tmp[j][i][3] = 0;
-               } else {
-                  for(k = 0; k < comps; ++k) {
-                     tmp[j][i][k] = srcp[k];
-                  }
+               for(k = 0; k < comps; ++k) {
+                  tmp[j][i][k] = src[(y + j)*src_stride/sizeof(*src) + (x + i)*comps + k];
                }
             }
          }