Variable Bit Rate GPU Texture Decompression
UMBC
Eurographics Symposium on Rendering 2011, Volume 30 (2011), Number 4
@inproceedings{olano2011variable,
title={Variable Bit Rate GPU Texture Decompression},
author={Olano, M. and Baker, D. and Griffin, W. and Barczak, J.},
booktitle={Computer Graphics Forum},
volume={30},
number={4},
pages={1299–1308},
year={2011},
organization={Wiley Online Library}
}
Variable bit rate compression can achieve better quality and compression rates than fixed bit rate methods. None the less, GPU texturing uses lossy fixed bit rate methods like DXT to allow random access and on-the-fly decompression during rendering. Changes in games and GPUs since DXT was developed make its compression artifacts less acceptable, and texture bandwidth less of an issue, but texture size is a serious and growing problem. Games use a large total volume of texture data, but have a much smaller active set. We present a new paradigm that separates GPU decompression from rendering. Rendering is from uncompressed data, avoiding the need for random access decompression. We demonstrate this paradigm with a new variable bit rate lossy texture compression algorithm that is well suited to the GPU, including a new GPU-friendly formulation of range decoding, and a new texture compression scheme averaging 12.4:1 lossy compression ratio on 471 real game textures with a quality level similar to traditional DXT compression. The total game texture set are stored in the GPU in compressed form, and decompressed for use in a fraction of a second per scene.
July 23, 2011 by hgpu