By using this site, you agree to our Privacy Policy and our Terms of Use. Close

Forums - Gaming Discussion - Will Direct3D cease to be the primary 3D API?

Until recently, the cutting edge of games in terms of graphical power, physics, AI and objects rendered was the PC - specifically Microsoft Windows on an x86 or AMD64 platform.

The large increase in computational power of consoles relative to a PC from the 6th to the 7th generation, however, has seen numerous graphically state-of-the-art projects being done exclusively or jointly on consoles. Relative to the console market, the Wintel platform is becoming an equal. The most commonly targeted 'high-performance' platforms today include Xbox 360, PS3, Windows and Mac OS X (the Wii, while seeing very high sales in hardware and software, is not the focus for graphics-intensive game, though it can be considered to be capable of supporting them. The same is true for other PC operating systems.)

Microsoft's Direct3D API has long been the most used graphics API for 3D games. Its competitor, OpenGL, is generally as capable but has not been adopted by game engine creators primarily due to the Direct3D lock-in with WinAPI on the desktop. However, Direct3D/DirectX has three main disadvantages:

1) It is not portable. The PS3 and Mac OS X do not support it at all, while Xbox 360 uses a cut-down version that requires a partial rewrite to support it. The Wii and alternative OSs such as Linux also do not use it, so if they were to become more important platforms for cutting-edge graphics then the limits of Direct3D would be felt even more.

2) The install base is fragmented. DirectX 10 is only available on Windows Vista which has less than a third of the market share of Windows XP and only with new (late 2006 or later) graphics hardware only possessed by 9.66% of gamers (source: Steam survey) , meaning that developers can't solely support the new API without losing over 90% of PCs. At the same time, developers cannot just support DirectX 9 in a new engine, because it will soon be unmaintained and unsupported. Worse, DirectX 10.1 is only supported on ATI HD3xxx series cards on Vista , and this precise setup is only possessed by 0.24% of gamers (source: Steam survey), so the absolute latest version is not even worth making a single game with. Which of the three versions does a provider support? With OpenGL, the majority of users support the latest version, and almost all of the console versions are derivatives of that same version.

3) On a console, hardware constraints mean that much more low-level optimisation is needed to achievethe best performance. OpenGL, being an open specification, is easier to optimise and has greater potential for performance.

 

Therefore, I predict a shift towards OpenGL development in new game engines, and this will increase the portability and future support of most games using these engines. Much of this applies to other platform-specific code like .NET, WinAPI, Cocoa and Carbon too, so games will depend less and less on particular platforms. This will open new opportunities like an increased number of PC-only franchises appearing on Mac OS X, Linux and all three of the home consoles.



Around the Network

I doubt it.



OpenGL is a much better platform.



PC gaming is better than console gaming. Always.     We are Anonymous, We are Legion    Kick-ass interview   Great Flash Series Here    Anime Ratings     Make and Play Please
Amazing discussion about being wrong
Official VGChartz Folding@Home Team #109453
 

I think what your pointing at is true, but perhaps also the turning point is long past.

The PS2 software was not developed with DirectX, and that was the "lions share" of the software for most of this decade; and that machine was not replaced by the PC nor the 360.

DirectX is only slightly more influential than the HD-DVD MS codec's at this point...



Unless OpenGL get their asses into gear I doubt it. Direct3D showed that in a really fast moving world working by consensus has some disadvantages. Besides Microsoft still has a big tooling advantage.



Around the Network

Well if you think about it, one of the primary functions of the xbox and the xbox360 is to maintain the primacy of Direct3D. Games and other DirectX apps have been the primary hurdles to mass OS X and Linux adoption.



"DirectX is only slightly more influential than the HD-DVD MS codec's at this point..."

I am assuming you are saying that DirectX has no influence anymore. Interesting.



Kyros said:
Unless OpenGL get their asses into gear I doubt it. Direct3D showed that in a really fast moving world working by consensus has some disadvantages. Besides Microsoft still has a big tooling advantage.
 

I agree. OpenGL 3 has vanished off the face of the Earth, apparently. However, OpenGL 2 with extensions can provide all the useful functionality of Direct3D 10. Programming OpenGL was more difficult but gave better performance if the work was put in; that problem has largelt gone away with the number of middleware libraries that abstract much of the work if you want to increase ease of use vs. performance.

"The PS2 software was not developed with DirectX, and that was the "lions share" of the software for most of this decade; and that machine was not replaced by the PC nor the 360."

Yes, but the most graphically intensive games were usually PC exclusives. This is no longer the case. It is the cutting edge graphics games that influence engine development and therefore direct the market. Now consoles are part of that leading edge unlike when the PS2 was dominant.

"OpenGL is a much better platform."

I agree, but as the market was previously locked into DirectX, it will be a hard transition before the benefits are realised. The graphics driver people (the ones who make it really work) know, however - both ATi and Nvidia translate DirectX into OpenGL for the actual execution.

"Well if you think about it, one of the primary functions of the xbox and the xbox360 is to maintain the primacy of Direct3D. Games and other DirectX apps have been the primary hurdles to mass OS X and Linux adoption."

Absolutely. It's why Microsoft has lost billions of dollars creating Xbox in the first place. All of their technologies are to preserve the lucrative Windows and Office monopolies - Silverlight over cross-platform Flash adoption, .NET over cross-platform Java adoption, Windows Live over Google's cross-platform software, Xbox over Sony's living room domination, Zune over cross-platform iPod, Windows Mobile over mobile Linux, Office 2008 for Mac over iWork, SQL Server over cross-platform MySQL, Home Server over custom Linux NAS devices, Media Centre over cross-platformMythTV, IE over cross-platform Netscape ... none of these are lucrative by themselves,but they perpetuate the Windows lock-in.



If things get bad for MS (and I don't think they are). They may release DX10 for non-vista systems. Vista has very bad support and I don't think that's going to correct itself in a timely fashion, not until some serious service packs come out.

The industry won't undo it's history with DX overnight. It will need some time to say, "Yes, there is need for change." And then it will take some time for the competition to "get their asses in gear."

As a member of the indie games development community I can tell you that the choice between DX vs cross-platform solutions can be tough. That said the majority of games released are for windows. The question really should be as Soleron indicated, "When will Microsoft's stranglehold loosen?" When MS really starts to lose influence then we may see a strong move away from DX.



I think Windows Vista and Windows 7 are very important. DX10 is Vista-only and Windows 7 is apparently built from scratch, ie. old programs don't work in it. This could be the chance for OpenGL although I doubt it. I really hope OpenGL wins but the chances aren't very good right now.