Wenn wir Webseiten entwickeln, können wir basierend auf marketshare grob ausarbeiten, welche Browser unterstützt werden.Welche Version von OpenGL/Direct3D sollte ich für optimale Kompatibilität ausrichten?
Wenn wir in .NET entwickeln, können wir breit erarbeiten, welche .NET-Version für which Windows versionshave it installed zu entwickeln.
Aber wie können wir bei der Entwicklung von OpenGL oder Direct3D-Anwendungen wissen, welche Videokarten Menschen (ich meine "Leute" im Gegensatz zu "Hardcore-Gamer" oder "Unternehmen mit CAD": P) verwenden? Gibt es Statistiken über solche Dinge? Gibt es eine allgemeine Logik, nach der die Leute herausfinden, welche Version sie unterstützen sollen? So wie die meisten Unternehmen ein Minimum an IE6 in Webseiten unterstützt haben (vielleicht until just recently), gibt es einen allgemeinen Konsens, ein Minimum von, sagen wir, OpenGL 1.5 oder DirectX 8 oder so etwas zu unterstützen?
Ich stelle fest, dass wir which specific video cards support which versions dieser APIs herausfinden können, aber woher wissen wir, welche Videokarten Menschen tatsächlich verwenden, gibt es irgendeine Art von Forschung zu diesem Thema?
N.B. Ich bin mehr an OpenGL interessiert, weil ich das verwende, aber ich erwähne Direct3D, weil ich annehme, dass das gleiche Problem zutrifft.
DirectX-7-Level-Karten werden weiterhin unter DX9 ausgeführt. Sie können Funktionen wie Shader einfach nicht verwenden. Dies ist bei DX10 NICHT der Fall. Wenn eine Karte den DX10-Funktionssatz nicht unterstützt, können Sie DX10 nicht verwenden. – Goz
Beachten Sie, dass Sie bei der Auswahl der zu verwendenden API-Version nicht näher bei der Festlegung Ihres zulässigen Feature-Sets sind. Ein großer Fehler der 3D-Entwicklung besteht darin, dass viele Funktionen, die von dem Standard gefordert werden, den sie unterstützen, "funktionieren", aber nicht auf einer Qualität und Leistung, die Sie verwenden können. Unterschiedliche Hardware wird eine andere Teilmenge der Standardfunktionen bevorzugen. – Alan