Hancoque schrieb:
Das brennt mir schon länger auf der Zunge: Kann mir mal jemand erklären, warum die Grafikkartenhersteller ihre Treiber für die Spiele entwickeln und nicht die Spielehersteller für den jeweils aktuellen Treiber? Vor allem: Womit testen die Spielehersteller ihre Spiele bevor es diese Treiber gibt? Wie können die ein Spiel als fertig betrachten, wenn es doch mit der aktuellen Treiberversion noch miserabel läuft? Ich würde mir doch eigentlich denken, dass es Standards wie Direct3D und OpenGL gibt, deren Spezifikation einer bestimmten Version (z.B. DirectX 11.1) dann einfach zu 100% von den Grafikkartenherstellern im Treiber implementiert wird. Warum gibt es da so viel zu optimieren oder so viele Fehler bei noch nicht optimierten Treibern? Ist das alles ein Ergebnis von Trickserei, um die Performance zu erhöhen und dafür am Standard vorbei zu entwickeln? Wird hier wirklich für jedes Spiel eine Extrawurst gebraten anstatt einfach sauber die Standards zu implementieren? Ich schätze für AAA-Titel wird der Treiber angepasst und kleinere Spieleentwickler müssen ihr Spiel an den Treiber anpassen. Kann das sein? Mich würde wirklich mal interessieren, warum es immer diese Probleme bei Releases gibt und dann neue Treiber die Probleme lösen.
Also generell erst mal eines vorweg:
Deine Denke ist hier falsch. Du schreibst von Problemen, und tust so, als ob diese Spiele gar nicht laufen würden. Meistens geht es aber nur darum, mehr Peformance zu liefern. Sprich die Spiele laufen auch heute schon. Aber dann eben z.B. nur mit 88 FPS und nicht mit 110 FPS. Jetzt sind aber bestimmte Titel so weit verbreitet, dass sie auch zu benchmark-Kursen eventuell hinzukommen, etc. - Und hier betreiben dann die Hardwarehersteller entsprechende Optimierung. Einfach um im Benchmark besser da zu stehen, als die Konkurrenz...
Der Hauptgrund dürfte also Werbung an sich sein.
Zu den Spieleherstellern - die testen schon mit den gegebenen Treibern. Es ist aber bekannt, dass bei großen Produktionen die Spielehersteller sogar eigene Treiber für ein Projekt X im Vorfeld bekommen und diese nutzen.
Zur generellen Frage, der Optimierung:
Ein Treiber muss ja heute gewisse Standards bedienen. Er soll alles im Standard können und zwar möglichst stabil/fehlerfrei.
Das ist aber nicht unbedingt Performant. Wenn jetzt ein Spiel aus diesem Standard-Set an Funktionen nur 33% nutzt - diese Funktionen aber aufgrund des Standards "complex" sind und damit nicht unbedingt schnell - dann kann der Hardwarehersteller hier durch Treiberoptimierungen mehr Leistung raus holen.
Im übrigen ist diese Praxis im Profibereich schon lange Standard. Nebenbei, sofern du Geld hast, denke ich könntest auch du (mit dem kleinen Indietitel) eine solche Verbesserung des Treibers einkaufen. Die großen haben den Vorteil, dass Ihre Spiele einen gewissen Einfluss auf den Markt haben. Und dadurch hat der Hardwarehersteller einen gewissen Druck etwas zu tun um seinen Marktanteil auszuweiten oder zu verteidigen.