In a recent interview, John Carmack (Doom, Quake) said Direct3D is a rather better API today. He also apreciates the courage shown by Microsoft about the incompatible changes to improve the API (Direct3D 11 vs D3D10/D3D9), while OpenGL has to support backward compatibility. Direct3D has a better multi-threading and render-state management.
Okay but why id Software base-code is still OpenGL-based?
Carmack’s answer: inertia is the main reason that keeps id Software on OpenGL.
But Carmack has no plan to switch to Direct3D despite its advantages.
OpenGL still works fine,’ said Carmack, ‘and we wouldn’t get any huge benefits by making the switch