Wednesday, November 22, 2017

"Universal" GPU texture/image format examples

All PSNR figures are luma PSNR. Each image was transcoded from the same compressed texture data.

ETC1 41.233

DXT1 40.9

ETC1 45.964

DXT1 45.322

ETC1 46.461

DXT1 44.865

ETC1 43.785

DXT1 43.406

ETC1 33.516

DXT1 33.339


  1. Interesting to read:
    "Full transcoding on the GPU will only work on those GPU's that support LZ in hardware (or possibly a compute shader)"
    just for curiosity:
    can name these GPUs? all desktop GPUs supporting DXT formats support LZ in hardware?
    mobile wise any GPU with LZ support?
    should your work make vendors expose LZ hardware decoding in some way on graphic APIs?


    1. I know that some modern consoles support LZ in hardware. I'm no expert on this, but I suspect some AMD chips have LZ in hardware. It may also be possible to do a reasonable LZ decompressor in a compute shader.