Elsa Winner II 16MB - Seite 5

Anzeige

Texture Compression

S3 hat schon mit dem Savage3D ein neues Verfahren namens Texture Compression (S3TC) eingeführt, daß die Grafikchips von S3 hardware-mäßig unterstützen. Das bedeutet, daß die von einem Spiel benötigten Texturen in komprimierter und damit kleinerer Form vorliegen und kurz vor der Darstellung vom Grafikchip de-komprimiert werden. Wer weiter ins Detail gehen möchte, sei an die hervorragende Erläuterung von 3DConcept verwiesen, aus der ich noch zwei Passagen über den Nutzen von Texture Compression zitieren möchte: Texturkompression verringert die nötige Bandbreite und führt dazu, daß mehr Texturen im lokalen Speicher der Grafikkarte Platz finden, so daß das lästige Textureswapping über den AGP oder den PCI-Bus verringert werden kann.
Und im Fazit heißt es dann: Texturkompression hat zwei Vorteile: Es verringert die Bandbreite und/oder erhöht die mögliche Anzahl Texturen ohne Swapping.

Eine Komprimierung von Bildern führt – wie man bei der JPEG-Komprimierung sehen kann – immer auch zu einem Verlust von Bildinformationen, d.h. die Bildqualität leidet. Wie sich das bei der S3 Texture Compression in der Praxis auswirkt, kann anhand der Testversion von Quake3 Arena demonstriert werden, da dieses Spiel S3TC unterstützt.
Hier also dreimal (fast) der gleiche Screenshot aus Q3Test, links mit 16bit, rechts mit 32bit und darunter mit Compressed Textures.

Q3Test 16bit  Q3Test 32bit
Q3Test Compressed
(Zum Vergrößern anklicken)

An der Darstellung des Himmels bzw. der angedeuteten Wolken sieht man recht deutlich, daß die Compressed Textures nicht an die Qualität des reinen 32bit Rendering herankommt, allerdings ist es wesentlich besser als die 16bit Darstellung, wo das Dithering sehr deutlich wird. Meiner (subjektiven!) Meinung nach ist die Grafik im komprimierten Modus absolut akzeptabel und keineswegs schlecht.
Aber bringt die Texture Compression auch einen Geschwindigkeitsvorteil gegenüber der Darstellung in 32bit Farbtiefe? Wieder wenden wir uns dem Q3Test zu, wo wir die Ergebnisse mit 16bit, 32bit und den komprimierten Texturen gegenüberstellen – einmal mit den Elsa- und dann auch mit den S3-Treibern.

Q3Test Texture Text (Elsa-Treiber)  Q3Test Texture Text (S3-Treiber)
(Zum Vergrößern anklicken)

Das Ergebnis ist je nach Treiber etwas unterschiedlich. Bei den Elsa-Treibern liegt die Performance mit compressed Textures – wie die Bildqualität – genau zwischen 16 und 32bit. Allerdings sind die Resultate so nah beieinander, daß sie praktisch vernachlässigbar sind.
Mit den S3-Treibern ist es dagegen unbedingt anzuraten, die komprimierten Texturen zu verwenden! Unter 640×480 ist man damit sogar schneller als die 16bit Darstellung! Außerdem war die Verwendung von Texturen in 32bit Farbtiefe ja sowieso nicht ganz stabil, wie oben bereits angemerkt.

Eine kleine Bemerkung noch:
Das Tool S3Tweak erlaubt einem die Aktivierung der S3TC auch außerhalb eines Spiels. Dies führte jedoch in Expendable zu nicht tolerierbarer Klötzchengrafik, insbesondere bei den ansonsten herrlichen (und vielzahligen!) Explosionen. Das ist also nicht unbedingt anzuraten.

Insgesamt gesehen muß man die S3 Texture Compression als nützliches Feature einstufen. Mit minimalem Qualitätsverlust läßt sich eine, wenn auch kleine, Verbesserung in der Performance erreichen. Wenn dann demnächst noch Spiele wie Unreal Tournament erscheinen, die viele große Texturen (2048×2048 Pixel) verwenden, wird die S3TC möglicherweise sogar unverzichtbar.

Frank Schräer

Herausgeber, Chefredakteur und Webmaster

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert