Home

Texturkompression

Texturkompression bezeichnet Verfahren zur Reduktion der Speichergröße von Texturen, die in Grafikkarten direkt als komprimierte Formate im Texture-Speicher abgelegt werden. Die meisten Verfahren sind verlustbehaftet und zielen darauf ab, Speicherbandbreite zu verringern und die GPU-Leistung zu schonen, während die visuelle Qualität durch passende Codierung möglichst erhalten bleibt.

Die Formate arbeiten typischerweise blockweise, oft in 4x4 Texel-Blöcken. Pro Block werden Farbinformationen in wenigen Bits

Wichtige Textur-Kompressionsformate sind BCn (z. B. BC1/DXT1, BC3/DXT5, BC4/BC5), ETCn (ETC1/ETC2/ETC3), PVRTC und ASTC. BC-Formate sind

Vorteile sind geringerer Speicherbedarf, reduzierte Bandbreite und oft bessere Frameraten. Nachteile sind sichtbare Artefakte wie Blockbildung

---

kodiert,
und
beim
Rendern
wird
der
Block
von
der
GPU
dekomprimiert
und
an
die
Shader-Pipeline
geliefert.
Dadurch
lassen
sich
Texturen
effizient
speicher-
oder
übertragungsseitig
handhaben,
ohne
dass
Anwendungen
Änderungen
am
Code
benötigen.
auf
Desktop-
und
Konsolengrafik
verbreitet,
ETC-Formate
dominieren
mobile
Geräte,
PVRTC
stammt
von
älteren
PowerVR-Implementierungen,
und
ASTC
bietet
flexible
Bitraten
und
Auflösung.
Die
Wahl
des
Formats
erfolgt
oft
plattformabhängig
und
wird
üblicherweise
in
Tools
oder
dem
Build-Prozess
festgelegt;
Laufzeitlearning
kann
ebenfalls
vorkommen,
insbesondere
bei
Streaming-Texturen.
oder
Farbbands
bei
zu
hohen
Kompressionsraten,
sowie
der
Bedarf
an
geeigneten
Tools
und
einer
passenden
Pipeline.
Die
Texturqualität
hängt
stark
von
Inhalt,
Format
und
Einstellungen
ab.