• Competitor rules

    Please remember that any mention of competitors, hinting at competitors or offering to provide details of competitors will result in an account suspension. The full rules can be found under the 'Terms and Rules' link in the bottom right corner of your screen. Just don't mention competitors in any way, shape or form and you'll be OK.

Carmack: Direct3D is now better than OpenGL

Soldato
Joined
7 May 2006
Posts
12,183
Location
London, Ealing
First person shooter godfather John Carmack has revealed that he now prefers DirectX to OpenGL, saying that 'inertia' is the main reason why id Software has stuck by the cross-platform 3D graphics API for years.

Speaking to bit-tech for a forthcoming Custom PC feature about the future of OpenGL in PC gaming, Carmack said 'I actually think that Direct3D is a rather better API today.' He also added that 'Microsoft had the courage to continue making significant incompatible changes to improve the API, while OpenGL has been held back by compatibility concerns. Direct3D handles multi-threading better, and newer versions manage state better.'

In case you're unfamiliar with the mighty Carmack, he co-founded id Software in 1990, and had a large part in programming Wolfenstein 3D and the original Doom and Quake games. Since then, id has rigidly stuck by OpenGL for both Doom III and Quake 4, while many other cutting-edge PC game developers have moved entirely over to Direct3D.

Some games, such as the Call of Duty series, which are based on id's engine, still use OpenGL, but there's little denying that OpenGL appears to have fallen out of favour lately with top-end PC game developers, even if it's still popular with mobile developers and 3D professionals.

While newer versions of OpenGL have kept up-to-date with some of the features found in DirectX, including DirectX 10's geometry shader, they usually have to be implemented via extensions, rather than the main API. Not only that, but Microsoft has now assumed the role of primary innovator in 3D PC gaming graphics, when it historically played a game of catch-up.

'The actual innovation in graphics has definitely been driven by Microsoft in the last ten years or so,' explained AMD's GPU worldwide developer relations manager, Richard Huddy. 'OpenGL has largely been tracking that, rather than coming up with new methods. The geometry shader, for example, which came in with Vista and DirectX 10, is wholly Microsoft's invention in the first place.'

'It is really just inertia that keeps us on OpenGL at this point,' Carmack told us. He also explained that the developer has no plans to move over to Direct3D, despite its advantages.

'OpenGL still works fine,' said Carmack, 'and we wouldn’t get any huge benefits by making the switch, so I can’t work up much enthusiasm for cleaning it out of our codebase. If it was just a matter of the game code, we could quite quickly produce a DirectX PC executable, but all of our tool code has to share resources with the game renderer, and I wouldn’t care to go over all of that for a dubious win.'
http://www.bit-tech.net/news/gaming/2011/03/11/carmack-directx-better-opengl/1
 
So basically it's a bit better for ease of development because there is no need for extensions. However, extensions also mean that new features can be exposed to OpenGL before Microsoft release a new DirectX version. Swings and roundabouts.
 
Random correction from the quote IIRC only the first Call of Duty game still uses Open GL, after that they ripped the renderer out entirely and rewrote it in D3D.

I think the real reason Carmack has moved away from Open GL tho is the multi-threading issues as its becoming something thats required more and more in newer games.
 
Random correction from the quote IIRC only the first Call of Duty game still uses Open GL, after that they ripped the renderer out entirely and rewrote it in D3D.

I think the real reason Carmack has moved away from Open GL tho is the multi-threading issues as its becoming something thats required more and more in newer games.

I'd like to see the phasing in of OpenGL ES on the desktop, so much leaner than OpenGL.
 
I think the real reason Carmack has moved away from Open GL tho is the multi-threading issues as its becoming something thats required more and more in newer games.

According to that article, he hasn't atm :

" He also explained that the developer has no plans to move over to Direct3D, despite its advantages "
 
i would imagine that in a couple of years when they stop developing the rage engine and move on to their next engine they could re-look at the options
 
Back
Top Bottom