18:00 - 01/12/2004 von Lars Weinand

Unreal Tournament 2003 nutzt diverse Shader-Effekte aus DirectX 8. Die Grafik wirkt deutlich lebendiger

Mit DirectX 8 wurden Grafikchips erstmals programmierbar. Es gibt dabei zwei Fähigkeiten, die es zu beachten gilt, nämlich Pixel- und Vertex-(Geometrie)-Berechnungen durch Shader. In DirectX 8 gibt es unterschiedliche Pixel-Shader-Modelle (PS 1.0, 1.1, 1.2 = DirectX 8; 1.4 = DirectX 8.1), die Unterschiede in der Programmierbarkeit aufweisen. Die Komplexität der Shader-Programme war zunächst stark begrenzt. Mit höherwertigen Shader-Modellen stieg diese dann an. Bei Vertex-Shadern gibt es bei DirectX 8 und 8.1 nur ein definiertes Modell - VS 1.0.

DirectX 9

Farcry darf als das erste Spiel gelten, das konsequent auf Shader setzt. Dank DirectX 9 wirken die Oberflächen echt, reagieren auf Lichtveränderungen, werfen natürliche Schatten etc. Zudem ist die Spielumgebung lebendiger als früher

Derzeit aktuell ist DirectX 9, das deutlich mehr Freiheiten bei der Programmierung lässt und längere Shader-Programme erlaubt. Damit wurde auch das Fließkomma-Datenmodell (engl. Floating Point) eingeführt, das deutlich komplexere Berechnungen erlaubt. Die beiden den Markt dominierenden Hersteller ATI und NVIDIA bieten unterschiedliche Präzisionsstufen an. Während ATI durchweg mit 24 Bit Genauigkeit rechnet, beherrschen NVIDIA-Karten auch 16 und 32 Bit (und einige FF Formate). Als Faustregel gilt: Je höher die Präzision, umso rechenintensiver wird die Berechnung. Welches Datenformat benutzt wird, hängt stark vom Effekt selbst ab, der damit dargstellt werden soll. Nicht immer benötigt man die volle Präzision.

Auch in DirectX 9 gibt es verschiedene Pixel-Shader-Standards oder Modelle (Shader Model =SM). Neben dem ursprünglichen SM 2.0 kamen noch 2.0a und 2.0b hinzu. Ganz neu ist SM 3.0, das im kommenden DirectX 9.0c enthalten sein wird und derzeit nur von NVIDIAs neuen GeForce-6800-rafikprozessoren beherrscht wird.

Wer mehr über die verschiedenen DirectX-Versionen mit den dazugehörigen Shader-Modellen erfahren möchte, findet unter den folgenden Links entsprechende weiterführende Informationen:

Introduction to DirectX 8 Programmable Shaders for DirectX 8 Introduction to DirectX 9 Shader Model 3.0 Microsoft DirectX Overview

Anzumerken ist, dass die benötigte DirectX-Version für ein Spiel nur wenig aussagt. So sind auch heute noch sehr viele Effekte, die selbst die neuesten Grafikprozessoren in die Knie zwingen, mit DirectX-8-Shadern möglich. Spielentwickler versuchen immer, die kleinstmögliche Shader-Version für einen Effekt zu verwenden. Wie viel Rechenleistung ein Shader-Programm benötigt, hängt in erster Linie von seiner Komplexität ab. Übrigens, alle Karten sind abwärtskompatibel.

Dieselbe Szene aus dem Spiel Farcry mit einer GeForce 4 Ti (DX8.1) und einer GeForce 6800 (DX9).

Beachten sollte man auch, das viele Einstiegskarten zwar dem DirectX-9-Standard entsprechen, aber durch ihre begrenzte Rechenleistung kaum in der Lage sind, auch spielbare Frameraten zu liefern. Manchmal betrifft die DirectX-9-Fähigkeit auch nur einzelne Bereiche. Ein gutes Beispiel dafür ist Intels neuer integrierte Grafikchipsatz i915G. Der Grafikprozessor kommt zwar mit Pixel Shadern 2.0 - also DirectX 9 zurecht, aber für die Vertex-Shader-Berechnungen muss vollständig die CPU herhalten.

Anzeige
Kommentare zum Beitrag
Kommentare auf dieser Seite geschlossen.
Google Anzeigen
Anzeige

Beste Angebote

Mehr aus dem Bereich
 Testberichte über Grafikkarten
Alle Grafikkarten Tests

Newsletters


  • Ihre Probleme und Fragen zu Computer-Technik
  • Abschicken

Partner