Warum hat OpenGL nicht pervers gemacht?

696
Grumpy ol' Bear

Wenn jemand eine ausführliche und ausführliche Erklärung (oder einen Link zu einem Artikel) geben könnte, warum OpenGL nie abgehauen ist, aber stattdessen Direct3D / DirectX im Spielebereich dominiert, wäre das sehr zu begrüßen.

Was ist passiert? Warum kann OpenGL jetzt nicht die Krone bekommen? Ich meine, bevor Direct3D / DirectX und OpenGL sich etablierten, waren Glide und Voodoo GPUs DIE GPU, wenn man 3D wollte.

0
Zwei Worte: Microsoft Monopoly LawrenceC vor 12 Jahren 2

1 Antwort auf die Frage

3
Community

Auf den Macs herrscht tatsächlich eine Art OpenGL und unter Linux Open GL. Für die Spiele unter diesen Betriebssystemen ist OpenGL also der König.

PS3-Spiele verwenden eine OpenGL-Rasse. XBox verwendet DirectX.

DirectX ist proprietär von Microsoft, und Microsoft hat viel Zeit investiert, um Grafikkartenfirmen und Spieleentwicklungsunternehmen dazu zu bringen, sich mehr auf DirectX zu konzentrieren. Das gesamte DirectX-Framework, die Tools, die Dokumentation und das Betriebssystem wurden so konzipiert, dass Entwickler es für diese Plattform einfacher finden könnten. Vergessen Sie auch nicht das aggressive Marketing (auf allen Grafikkarten, die Sie nur über DirectX auf der Titelseite hören, obwohl alle OpenGL-Anweisungen haben; alle Spiele verfügen über ihre DirectX-Funktionen, auch wenn einige Engines auch mit OpenGL arbeiten).

Die neuen Funktionen von DirectX 10 wurden bereits in OpenGL implementiert. Daher können wir nicht sagen, dass DirectX einige coole Sachen hat, die OpenGL nicht bietet.

In einem Satz ist also alles darauf zurückzuführen, dass die meisten Benutzer Computer mit Windows haben und Windows MS ist und DirectX MS ist.

Später edit: Ich muss auf meine Antwort zurückkommen, weil ich auf DirectX vs OpenGL eine coole Geschichte gefunden habe. Es scheint, als ob nicht nur Microsoft viel Arbeit in DirectX R & D investiert hat, sondern auch die Hersteller von OpenGL-Boards und Grafikkarten nicht viel zum Start von OpenGL beigetragen haben. Mehr hier: https://softwareengineering.stackexchange.com/a/88055