DocWindows
Vice Admiral
- Registriert
- Mai 2013
- Beiträge
- 6.809
franzerich schrieb:Also irgendwie find ich das absurd, dass dauernd Treiber für irgendwelche Spiele nachgeliefert werden müssen. Wie kann das überhaupt sein, dass da Fehler in der Darstellung o.ä. behoben werden? Sollte der DirectX Standard das nicht obsolet machen? Dafür ist der doch da - damit es egal bei welcher Grafikkarte gleich aussieht
Der DirectX Standard ist da, damit Spiele der Grafikkarte in einer definierten Sprache mitteilen können was sie tun soll. Den Befehl "Zeichne ein Dreieck an diesen Koordinaten" können somit Grafikkarten von nVidia, AMD und Intel verstehen. WIE sie diesen Befehl ausführen, bleibt aber ihnen überlassen.
Das ist schonmal eine Quelle für Fehler/Optimierungen.
Dann kommt noch dazu, dass verschiedene Grafikkartenarchitekturen verschiedene Stärken und Schwächen haben. Wenn das Spiel eine Folge von Befehlen schickt, die AMD gut und schnell verarbeiten kann, nVidia aber nicht, dann kann der Spielehersteller entweder die Folge von Befehlen so abändern, dass das Problem entschärft wird, oder der Grafikkartenhersteller "optimiert" seinen Treiber so, dass die Befehle anders ausgeführt werden als vorher, und damit besser auf der Architektur laufen.
Ein gutes Beispiel dafür waren die Async Shader. Diese hat AMD in Hardware, also im Chip, verfügbar gehabt und nVidia hat sie in Software, also im Treiber, realisiert. Bei älteren Generationen hatten sie diese Shader nicht mal in Software realisiert und nur so getan als wären sie da. Über DirectX haben Spiele nur gesagt, das diese Funktionen angesprochen werden sollen. AMD hat das dann tatsächlich anders realisiert als nVidia.
DirectX bietet somit eine Art Abstraktion, wo einem Spiel egal sein kann welche Hardware im Hintergrund werkelt. Solange wie der Grafikkartenhersteller in seinen Treibern die spezifizierten Funktionen bietet und damit DirectX-kompatibel ist, funktioniert es. Durch die Umstände die ich bereits genannt habe, kann es aber immer noch sein dass es mal gut oder mal weniger gut funktioniert.