Seit ich wieder mehr mit Direct3D 11 mache, arbeite ich auch lieber mit Direct3D als mit OpenGL. Die API ist extrem aufgeräumt und besonders die Shader Ressourcen lassen sich meines Erachtens besser handhaben,
als mit den vielen "Buffer Objects" in OpenGL (FBO, VBO, SSBO, PBO etc.). Vor allem die Sache mit den Shadern: während bei OpenGL die Shader vom Grafik-Treiber kompiliert werden, und somit jeder GraKa-Hersteller eine andere Lösung dafür hat (mit anderen Bugs und anderer 'Spezifikations-Toleranz'), übernimmt dies bei Direct3D die DX API die nur von Microsoft entwickelt wird. D.h. bei HLSL wird der selbe Shader für jede GraKa genau gleich kompiliert.
Das schöne jedoch an OpenGL ist: wird eine neue Version veröffentlicht, kann man die neuen Features relativ schnell über die Extensions in das bestehende Render-System integrieren, wohin gegen man bei D3D gleich ein komplett neues Render-System schreiben muss.
Hat halt alles Vor- und Nachteile
Gruß,
Lukas