[Quelle: siehe Bildergalerie]
Windows
Vista ist nun mehr als ein Jahr auf dem Markt und mit dem Release des nächsten Microsoft-Betriebssystems rückte auch der Wechsel auf die modernste Grafikschnittstelle näher.
DirectX 10 kommt erstmals in der Geschichte der Microsoft-API ohne Abwärtskompatibilität aus. Worauf Sie sich in
D3D10 unterstützenden
Spielen vermutlich freuen können und was wohl zunächst eher
Tech-Demos vorbehalten bleibt, beleuchtet
PCGH.de im folgenden Artikel.
Direct3D-10-Effekte gibt es überhaupt nicht! Die wohl meistgestellte Frage, nämlich die nach den neuen Effekten, die durch D3D10 möglich werden, müssen wir direkt mit einer niederschmetternden Antwort versehen: Es gibt keine neuen
Effekte durch
D3D10. Prinzipiell ist alles, was D3D10 kann, auch mit D3D9 möglich. Allerdings werden einige Techniken durch D3D10 erstmals sinnvoll einsetzbar, sodass ihre Verbreitung in Spielen wohl weiter zunehmen wird.
Auf zu neuen Ufern Den Vorteil von DirectX 10, über ein einheitliches und verpflichtendes Feature-Set zu verfügen, haben wir bereits thematisiert. So werden Entwickler, besonders, wenn sie ihre bereits bestehenden Spiele an D3D10 anpassen und Patches herausbringen, nicht an eine riesige, sogenannte "Installed User Base" gebunden sein, auf die man auch noch Rücksicht nehmen muss. Normalerweise legt der Publisher eines Spiels aufgrund von Marktstudien fest, bis zu welcher Hardware hinab die Einstellungen skalierbar bleiben müssen. Bei D3D10 entfällt dieser Punkt und zudem gab es anfangs lediglich High-End-Hardware geben, die D3D10 unterstützt. Ein wenig Augenschmaus können Sie also voraussetzen.
Die neue 3D-PipelineDie altbekannte Aufteilung der Render-Pipeline wird ebenfalls aufgebrochen. Durchläuft ein Pixel diese bislang auf einer relativ fest vorgegebenen Bahn - ähnlich einer echten "Pipeline" -, wird es bei D3D10 zu deutlich mehr Kreisläufen innerhalb der
GPU kommen. Weitaus mehr Einheiten werden Lese- und Schreibzugriff auf den Pixelspeicher haben, sodass eine größere Flexibilität bei der Verwendung der Daten ermöglicht wird. Neu ist auch der Verzicht auf viele "Fixed-Function"-Einheiten und beschränkte Rechengenauigkeit wie FP16 und FP24.
Der Geometry-ShaderEine der wichtigsten Neuerungen ist sicherlich der Geometry-Shader. Im Gegensatz zum Vertex-
Shader, der Eckpunkte verformt, kann diese Shader-Stufe zusätzliche Geometrie direkt auf dem
Grafikchip erzeugen und diese dann als Eingabe-Werte dem Vertex-Shader zurückliefern (Stream-out).
Damit sind im Prinzip vielfältige Techniken möglich. Von
Displacement-Mapping über Volumenschatten bis hin zu geometrischem Level-of-Detail lassen sich diese Techniken, die vorher auf die Mithilfe der CPU angewiesen waren, jetzt direkt auf der Grafikkarte realisieren. Allerdings warnten die Developer-Relations-Abteilungen von
Ati und
Nvidia bereits die Entwickler, der ersten Geometry-Shader-Generation noch nicht zu viel Last aufzubürden. Zum einen verfügt man noch nicht über viel Erfahrung mit dem Load-Balancing und zum anderen soll die neue Shader-Stufe noch nicht allzu leistungsfähig ausfallen - man wollte die nötigen Transistoren eher in eine höhere Pixelleistung investieren.
Mehr HDR-Rendering Um vor allem dem exponenziell steigenden Bandbreitenbedarf bei Verwendung von HDR-Rendering zu begegnen, gibt es neben der Möglichkeit zur Kompression auch neue Pflichtformate, die speziell für den Einsatz bei HDR-Rendering optimiert wurden. R9G9B9E5_Sharedexp und R11G11B10_Float bieten als Texturformate einen sehr hohen Dynamikumfang. Besonders das erste Format dürfte interessant sein, da es mit 32 Integer-Bit auskommt.
[index]
Mehr Physik Die gesamte Struktur und der vereinheitlichte Befehlsumfang von D3D10 eignen sich dank der Annäherung an CPU-Programmierbarkeit auch sehr gut für Physikberechnungen. Daher stammten vermutlich auch Gerüchte, Next-Gen-GPUs hätten einen Physikprozessor integriert. Vielmehr können sie jedoch die vorhandenen Recheneinheiten für diese Art von Berechnungen viel besser nutzen, als es mit den bisher üblichen D3D9-GPUs möglich ist.
Mehr Schatten Dank der Fähigkeit des Geometry-Shaders, zusätzliche Geometrie zu erzeugen, kann die sogenannte Shadow-Volume-Extrusion, die bisher der CPU oblag, nun direkt in der GPU erfolgen. Volumenschatten, wie sie zum Beispiel bei Doom 3 oder Prey zum Einsatz kommen, sind mit einer höheren Anzahl an Lichtquellen realisierbar, ohne die CPU über Gebühr zu belasten. Auch die Entscheidung, nun endlich die Filterung von Shadow-Maps als Pflichtmerkmal vorzuschreiben, dürfte der Konzentration auf eine Art von Schattenberechnung Vorschub leisten. Bis zur DX10-Generation gab es keinen Königsweg für Shadow-Mapping, da die Filterung von Tiefentexturen (Shadow-Maps) bei Nvidia die Textureinheit übernahm, während bei Ati der Pixel-Shader dafür herhalten musste.
Mehr Umgebungsreflexionen Geometry-Shader und Stream-out können Cube-Mapping, bei dem die Umgebungsspiegelung von der Innenseite eines Würfels aus gerendert wird, deutlich beschleunigen. Anstelle von bis zu sechs Durchgängen (einer für jede Seite des Würfels) kann nun der Geometry-Shader per Stream-out alle sechs Seiten direkt aufbereiten.
Mehr unterschiedliche Objekte Geringerer Kommando-Overhead beim Transfer von Geometrie- und Objektdaten sowie wieder einmal der Geometry-Shader sorgen in Zukunft dafür, dass die Spielwelten nicht mehr eckig und gleichförmig, sondern realistisch und abwechslungsreich aussehen können. Die CPU kann mit der gleichen Leistung nun deutlich mehr Objekte auf die Reise schicken und die Grafikkarte kann dank Displacement-Mapping diesen Objekten einen individuellen Look verleihen. So ist vorstellbar, dass es im ganzen Spiel nur ein Modell für Humanoide gibt und der Geometry-Shader per Displacement-Map daraus Männlein, Weiblein, schmächtige und füllige Menschen und auch humanoide Aliens erzeugt.
Mehr Kantenglättung Da nun innerhalb eines Pixel-Shaders auch auf die einzelnen Sub-Samples beim Multisampling zugegriffen werden kann, ist es mit D3D10 und besonders dem 10.1-Update möglich, auch das für komplexe Beleuchtung nützliche, sogenannte "Deferred Shading" mit Kantenglättung zu kombinieren.
Fazit: D3D10 in Spielen Durch Verzicht auf Abwärtskompatibilität, eine leistungsfähige Hardware von Anfang an und die freie Programmierbarkeit von Direct3D 10 werden Sie in zukünftigen Spielen zwar nicht viel Neues, aber von Bekanntem deutlich mehr sehen können - dank der neuen Techniken, welche die API ermöglicht.
[index]
Bildergalerie zum Artikel