


I commonly find images created by others that include an unnecessary, fully-transparent alpha channel. An alpha channel will double the file size of your DDS file and significantly add to game or simulation video processing workload.

DXT5 stores alpha information in a way that is almost the same as color information. In DXT5, the alpha channel is encoded using a second set of 64 bits for each texel. What if the image has an alpha channel? How DXT handles this depends on the codec used. So for any set of images having the same dimensions, compressed size will always be the same. So each texel requires 2×16 bits for the colors, plus 16×2 bits for the indices, giving a total of 64 bits for each texel, which equates to 4 bits per pixel. The two representative colors are stored as 16-bit RGB values (5:6:5). The sixteen pixels of the texel are then assigned a 2-bit index (0-3) that maps them to the color range. For every texel, DXT selects two colors from the texel, each determining one end of a color range of 4 colors. DXT sees images as collections of 4×4 blocks of pixels called “texels”.
