Carmack: Direct3D Now Better Than OpenGL
John Carmack admits that DirectX has become the better API, but he's still sticking with OpenGL.
id Software mad scientist and first-person shooter "granddaddy" John Carmack said that DirectX has matured to the point where it's now a better API than OpenGL. It handles multi-threading better and newer versions manage state better. But he doesn't have plans in moving to DirectX any time soon, blaming inertia for the studio's continued use of OpenGL.
"OpenGL still works fine," Carmack told Bit-Tech, "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."
Very few titles still rely on OpenGL to render GPU-dependant visuals, seemingly fallen out of favor with top-end PC developers. Microsoft has essentially taken the throne as the leading 3D PC gaming graphics innovator, a 180-degree turnaround when compared to the early days of DirectX lagging behind and playing catch-up with OpenGL's innovations.
The current success of DirectX is largely due to Microsoft's courage to continue making significant incompatible changes to improve the API. OpenGL has been held back by compatibility concerns, Carmack said.
AMD's GPU worldwide developer relations manager, Richard Huddy, agrees. He added that the actual innovation in graphics has been driven by Microsoft in the last ten or so years. "OpenGL has largely been tracking that, rather than coming up with new methods," he said. "The geometry shader, for example, which came in with Vista and DirectX 10, is wholly Microsoft's invention in the first place."
Given Carmack's dedication to OpenGL, it's safe to assume the API will be used in RAGE, DOOM 4 and other 3rd-party games which will use the id Tech 5 engine. If anything, OpenGL has seen a resurgence on mobile devices via OpenGL ES. The latest version (2.0) supports vertex and fragment shaders, and doesn't use transformation, lighting, texturing, and fog calculations, breaking backwards-compatibility to versions 1.0 and 1.1.
- john-Carmack ,
- DirectX ,
- OpenGL ,
- API ,
- Doom
- Tribes Returns as Multiplayer-Only Game in 2011
- Forum Ban Locks Player Out Of Dragon Age 2
- Sony Xperia Play Launching March 31 in the UK
- Groupola Scolded for Misleading £99 iPhone Offer
- Prime Minister Opens Gaming Centre for the Disabled
- Tesco Mobile Blocking iOS 4.3's Personal Hotspot
- Watch the Next-Generation Unreal Graphics NOW
- Intel's vPro Core CPUs Can Take SMS ''Poison Pill''
- Intel & Lenovo Release Rebadged Classmate+ PC
- This Luxury PC Has Post-Modern Sculptural Look
- Check out Crytek's Latest Work on CryEngine 3
- EVGA GeForce GTX 460 2Win is a Dual-Fermi Card
- Nvidia Goes All Out at PAX East 2011
- Child of Eden Wowed the Crowd at PAX
- ISPs to Publish Traffic Management Policies
- Politician to Pay Over £50k in Twitter Libel Case
- Nintendo 3DS UK Price Falls to £187
- GeForce GTX 590 Detalis Leaked via Slide





i like opengl because its open xD. i can have tesselation on windows xp, os x or linux, rather than being limited.
Shiit happens
As it was said in http://www.osnews.com/thread?467079 :
The article you've linked to [http://www.bit-tech.net/news/gaming/2011/03/11/carmack-directx-better-opengl/1] mixes up a family of API's (Direct X) with a 3D only API (OpenGL). The journalist should have mentioned Direct3D when comparing to OpenGL. Carmack would never make such a mistake, hence the article probably has more journalistic interpretation / freedom in it than actually quoting Carmacks exact words. The proof is still in the pudding, since Carmack is still using OpenGL for idTech5 rendering engine, and not Direct3D. There was a period in 2006-2008 where OpenGL got intangled in a dispute amongst it's members regarding the future direction of OpenGL. However, ever since they got their act together, OpenGL has been moving faster and adopting newer technologies more agressively than the Microsoft offering. There have been 3 more OpenGL spec releases in the last 18 months compared to Direct3D. Each spec matches hardware requirement (what's the point of doing a release if it doesn't target hardware support). Hence, OpenGL 4.1 supports more hardware features than Direct3D.
Disclaimer - I write 3D rendering engines professionally for a living.