Bookmark and Share


The man behind a number of many AAA games, including Doom and Quake, and who has always been apologist of OpenGL application programming interface (API), John Carmack, said in an interview that the Microsoft Direct3D API now provides a better platform to develop.

"I actually think that Direct3D is a rather better API today. 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," said John Carmack, the head programmer of id Software, in an interview with Bit-Tech web-site.

For many years Mr. Carmack and id Software obeyed the Direct3D API since it does not allow to impose vendor-proprietary extensions. Nonetheless, the vast majority of game developers have been used D3D as the only standard since the early aughts. Moreover, even id's boss does not intent to move to DirectX because he has too many platforms to serve.

"It is really just inertia that keeps us on OpenGL at this point. [id] has no plans to move over to Direct3D, despite its advantages. OpenGL still works fine 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, explained Mr. Carmack.

Given the fact that John Carmack heavily works on ports of video games created by his company onto mobile devices as we as developing games for emerging mobile platforms that require "open" tools amid being closed platforms.


Tags: DirectX, Microsoft, Windows, id Software


Comments currently: 13
Discussion started: 03/12/11 01:25:52 AM
Latest comment: 11/30/15 11:17:43 PM
Expand all threads | Collapse all threads


OpenGL 4.1 offers the same and even more feature than DirectX 11. Also is all time preferred for professional 3D graphics. I know that a game coded for OpenGL, runs on a professional card 3,4 times better than if it would have been coded for DirectX ...
0 0 [Posted by: TAViX  | Date: 03/12/11 01:25:52 AM]
- collapse thread

there are many inaccurate statements in your comment:

* most pro 3D programs use openGL because it is multiplatform, even though it performs many times worse than direct3D; case in point, 3dsmax vs maya, same scene, 50fps vs 10fps:

* pro cards don't run games any faster than their gaming equivalents; they are only faster with pro openGL apps, and that's also changed a bit in recent years

* on the openGL 4.1 thing, I have no idea, but I trust Carmack to know what he's talking about
0 0 [Posted by: NormanBates  | Date: 03/12/11 02:32:30 AM]
Agreed. It's easier to trust Carmack on this than an unknown poster.

My own opinion is that OpenGL indeed has the edge in terms of taking advantage of graphics card features but Direct3D is the cleaner API. I trust Carmack that Direct3D has a performance edge due to being cleaner.
0 0 [Posted by: ET3D  | Date: 03/12/11 09:13:41 AM]
What inaccurate statements??? Did I say anywhere that OpenGL is better than D3D in games?? And those tests from guru3d are completely crap. Just look again what hardware they use, it's hilarious. Those card didn't even supported in hardware all the OpenGL functions, so they use software to replace the missing functions.
Like I've said, OpenGL it much more better than D3D for professional apps than D3D. It's not only about speed, but also about features and implm. Btw, did you know that even OpenGL1.2 supports native ray tracing, animated video texture rendering, etc, features that are not even supported in DX11 ?
0 0 [Posted by: TAViX  | Date: 03/13/11 01:49:12 AM]
I'm sorry, but basically everything you said:

"OpenGL 4.1 offers the same and even more feature than DirectX 11"
Carmack doesn't agree

"Also is all time preferred for professional 3D graphics."
only because it is multiplatform (given that it is much slower)

"a game coded for OpenGL, runs on a professional card 3,4 times better than if it would have been coded for DirectX"
not true, it runs just as fast
I haven't found any recent benchmarks, but trust me, it's still so
0 0 [Posted by: NormanBates  | Date: 03/13/11 03:45:53 AM]
by the way: please don't take it personal

I'm pretty sure you're very knowledgeable; no, I didn't know about openGL1.2 and raytracing

but I've recently switched from maya to 3dsmax because performance is worlds apart and the only reason I can see for sticking with maya (and thus openGL) is multiplatform support (ok, and it has a lot of super-advanced features, but I'm still learning, I don't need most of those; and those features don't depend on openGL, they're all about the node philosophy and the modularity and programmability of maya)
0 0 [Posted by: NormanBates  | Date: 03/13/11 03:50:52 AM]
I loled at those 7 years old links you provide, hehe!

BTW, I don't know what Maya or 3DSM are you using, I'm using the latest version with the OpenGL 4.1 patch at work, and from experience I can tell you that OpenGL feels so much faster, stutter free, and ..."fluid" over Direct3D. I'm also using professional Quadro cards. Besides, I'm also using for 3D modeling and assemblies Catia and SolidWorks, which they work only wit OpenGL.

And mr. Carmack doesn't agree FOR GAMES, which I also agree
0 0 [Posted by: TAViX  | Date: 03/15/11 03:10:26 AM]
Any game, in any API, it will most likely not run at all in any pro card.
Pro cards are not optimized for openGL, are optimized for instruction calls that games never use, but 3d programs and physics simulators do (I don't speak of physix, havok etc here).

The only reason openGL is preferred for most of the 3d graphics programs is that it is multiplatform and can be used without the need to rewrite or use a wrapper to import programs in different platforms.

That said you can check the performance of programs like 3d studio max which use direct 3d and how they perform in pro cards, guess what, no difference from openGL ones and great difference than the gaming counter parts.

openGL is just slower in evolving because microsoft is spending a great amount in direct3d while other APIs have lost in time (like glide) and openGL is not supported by some major company who is spending a lot of money on it.

It is not inferior, but it catch up slower with direct 3d.

edit: sorry the other replies where not expanded by default and didn't took them into account when I was replying.
0 0 [Posted by: nitro912gr  | Date: 03/14/11 08:21:43 AM]


Add your Comment

Related news

Latest News

Wednesday, November 5, 2014

10:48 pm | LG’s Unique Ultra-Wide Curved 34” Display Finally Hits the Market. LG 34UC97 Available in the U.S. and the U.K.

Wednesday, October 8, 2014

12:52 pm | Lisa Su Appointed as New CEO of Advanced Micro Devices. Rory Read Steps Down, Lisa Su Becomes New CEO of AMD

Thursday, August 28, 2014

4:22 am | AMD Has No Plans to Reconsider Recommended Prices of Radeon R9 Graphics Cards. AMD Will Not Lower Recommended Prices of Radeon R9 Graphics Solutions

Wednesday, August 27, 2014

1:09 pm | Samsung Begins to Produce 2.13GHz 64GB DDR4 Memory Modules. Samsung Uses TSV DRAMs for 64GB DDR4 RDIMMs

Tuesday, August 26, 2014

10:41 am | AMD Quietly Reveals Third Iteration of GCN Architecture with Tonga GPU. AMD Unleashes Radeon R9 285 Graphics Cards, Tonga GPU, GCN 1.2 Architecture