Texturkomprimierung wird in der Computergrafik verwendet, um den Speicher- und Bandbreitenbedarf von Texturen zu senken.
Anforderungen
Die Anforderungen an Texturkomprimierungssysteme unterscheiden sich von denen an gewöhnliche Bildkomprimierung, da schneller Zugriff auf zufällige Texel nötig ist:
- Feste Komprimierungsrate, um Adressberechnungen zu vereinfachen
- Wenige Indirektionen wegen der langen Pipelines in Graphikchips
- Verträglichkeit mit Texturcaches, d. h. Erhalt der Lokalitätseigenschaft
- Einfacher, schneller, leicht in Hardware zu implementierender Dekomprimierungsalgorithmus (dagegen darf der Komprimierungsalgorithmus sehr aufwendig sein)
Systeme
In der Anfangszeit wurde Vektorquantisierung, insbesondere Indizierte Farben eingesetzt, das aber wegen der dabei auftretenden Indirektion durch andere Verfahren verdrängt wurde. Indizierte Farben wurden noch lange im Bereich eingebetteter Systeme eingesetzt und waren Bestandteil von OpenGL ES 1.x.
Am weitesten verbreitet auf dem Desktop ist die in DirectX aufgenommene und in OpenGL über eine Extension unterstützte S3 Texture Compression (S3TC).
Bei Highend-Smartphones ist das von Ericsson entwickelte ETC verbreitet.
FXT1 war ein Texturkomprimierungssystem von 3Dfx. Es wird heute nur noch von Intel unterstützt.