DirectX 12 Promises Lower-level Hardware Access On Multiple Platforms 107
crookedvulture writes "Microsoft formally introduced its DirectX 12 API at the Game Developers Conference yesterday. This next-gen programming interface will extend across multiple platforms, from PCs to consoles to mobile devices. Like AMD's Mantle API, it promises reduced CPU overhead and lower-level access to graphics hardware. But DirectX 12 won't be limited to one vendor's hardware. Intel, AMD, Nvidia, and Qualcomm have all pledged to support the API, which will apparently work on a lot of existing systems. Intel's Haswell CPUs are compatible with DirectX 12, as are multiple generations of existing AMD and Nvidia GPUs. A DirectX 12 update is also coming to the Xbox One. The first games to support the API won't arrive until the holiday season of 2015, though. A preview release is scheduled for this year."
Reader edxwelch adds that OpenGL 4.4 already has functionality similar to the improvements brought by DirectX 12 and Mantle:
"The announcement of DirectX 12 was a big focus of attention at GDC yesterday. The new API will bring Mantle-like low level access to the hardware, reducing the CPU overhead. The OpenGL talk 'Approaching Zero Driver Overhead in OpenGL,' on the other hand, received considerably less media attention. The OpenGL camp maintains that the features to reduce CPU overhead are already present in the current version. They suggest using the extensions such as, multidraw indirect combined with bindless graphics and sparse textures, OpenGL can get the similar 'close to the metal' performance as Mantle and DirectX 12."
Yawn (Score:2)
Re:Yawn (Score:5, Funny)
Re: (Score:2)
More like DOOM DOS that used DOS4GW. I remember typing dos4gw.exe doom.exe or something with its prereleases. ;)
Let me guess... (Score:5, Insightful)
It's Window 8 only, right?
Re: (Score:3)
Of course, how else will MS force Windows 8 on people...
Re: (Score:2)
Re: (Score:3)
DX10/11 couldn't force Vista on people. DX12 is even less likely to force Windows 8 on people.
Re: (Score:2)
Re: (Score:3)
As someone whose laptop broke, and didn't own an install disc for older versions of windows for the new one:
Let me assure you that we're not happily using windows 8.
Re: (Score:3)
Dude, it's literally a 30 second download for classicshell and maybe 1-2 minutes playing clicky clicky in the classicshell settings and you have win7 back, albeit with a shell start menu icon instead of the 7 winlogo icon. I haven't seen the metro shit in months ( bluetooth toggling is the last time).
Once classic shell was installed 8.0 is essentially the same as 7... 8.1 sucks if you use skydrive ( or whatever they call it now ) since you can't have a local acount AND use skydrive.
TL;DR - win8 + classic
Re: (Score:1)
Re: (Score:1)
Dude, it's literally 30 seconds to download Fedora 20 and replace Windows 8, like, and such as.
Re: (Score:2)
Except for the basic tools that have been migrated to metro. Want to change your wifi settings? Here's a clunky, ugly interface. It fixes some superficial problems, but other superficial problems remain.
Re: (Score:2)
Re: (Score:2)
I'd appreciate it if you stop making claims for an entire group of people. I have no problems with Win8 and happily use it.
Re: (Score:2)
Well, I didn't mean to speak for the mentally disabled too, you're right
Re: (Score:2)
Except that there aren't any DX12 games yet. And when they do start coming out they will be too few to really encourage many people to fork over one hundred dollars to upgrade their OS.
Re:Let me guess... (Score:5, Insightful)
The firm wouldn’t comment on whether Windows 7 would support DirectX 12
This makes it pretty clear that MS are not planning to support Windows 7, but that they know it will be an unpopular move or that it may be possible to pressure them into supporting Windows 7. After all, why would a game developer use DX12 over DX11 (or even DX9) if it is only supported by a small subset of their market?
Re:Let me guess... (Score:4, Interesting)
After all, why would a game developer use DX12 over DX11 (or even DX9) if it is only supported by a small subset of their market?
That never stopped them from doing it before. XP had majority market share when DX10/11 were launched.
Re:Let me guess... (Score:5, Insightful)
And the result is that DX9 games are still being released, even today.
Re: (Score:2)
Re: (Score:2)
Re: (Score:3)
And virtually every game released after that supported DX9 until Windows 7 got traction. And a lot of them even after that.
Re: (Score:2)
The thing is, these new DX features (like tesselation) are usually not an integral part of the game visuals. So many games just have a flag (DX9 vs DX11 flag), they make some preprocessor definitions to have two binaries, one with the newer features turned on and one with them turned off. So the windows XP folks could still play all the games (most of them would not have good enough hardware to use the new features anyway). This put the burden on the devs though, while not that hard to make two binaries it
Re: (Score:1)
Re: (Score:1)
Its like a few years ago Microsoft seemed t lose some inner core of competence on all kinds of fronts. Firstly there was vista now Windows 8. Next there is Word and Office where the Older versions are more competent, easier to use with better features and less vapourware. Then there is Explorer - at the moment I am still struggling through with 11 but it is a disaster that is struggling with even the most mainstream web pages - the other day even Outlook/Hotmail complained about the browser being non-compli
Re: (Score:2)
Re: (Score:2)
This makes it pretty clear that MS are not planning to support Windows 7
Why would Microsoft have to do anything? OpenGL comes with the driver, not the OS. Microsoft has only ever shipped a crappy software-only renderer.
Re: (Score:1)
Why would Microsoft have to do anything? OpenGL comes with the driver, not the OS. Microsoft has only ever shipped a crappy software-only renderer.
Unlike OpenGL, DirectX requires support from the OS *and* the driver. DX12 drivers are simply not possible on XP. Even DX11 are not possible on XP because there is no support for those features in the OS.
This is why OpenGL allows you to target video hardware, while DirectX is limited to specific windows version. This makes DirectX much more fragmented environment.
Re: (Score:2)
Hmm, I was still stuck on the OpenGL part of the summary I guess. That was way more interesting to me. Piss on DirectX. Only today did I get DX10 going, and it's on a super-budget card. And I don't actually care about DX10, it just happened because I finally installed Win7 on a machine with only hilariously instead of incredibly outdated graphics.
Re: (Score:2)
Bragging rights.
i.e.
CryTek Crysis
Re: (Score:2)
Just in time to make DX12 available only for Windows 9 then :-P
Re: (Score:1)
Is Windows 9 out yet? is it out yet? !!! Gods I hope 9 follows the pattern and is miles better than 8...
Re: (Score:2)
To be fair to Microsoft, this is not a new strategy for them. Windows 7 SP1 can only go up to DirectX 11.1 and Windows Visa SP2 can only go up to DirectX 10.1.
Unless I've read the history of this chart [wikipedia.org] incorrectly, then I would assume that both DirectX 12 and 12.1 would be compatible with Windows 8, but that you'll need to upgrade to Windows 8.1 if you want to get DirectX 12.2
Re: (Score:2)
AC parent is correct, I'm currently running Vista with DirectX11.
Re: (Score:2)
It's Window 8 only, right?
It is more likely for Windows 9 (not a joke).
A reaction? (Score:5, Interesting)
Re: (Score:2)
Re: (Score:1)
Re: (Score:2)
Dump Windows for Linux. Pretty dumb reason. In fact, not a reason. And, it won't save you money. Back in 2008/9 a Linux netbook was 50ish dollars cheaper. Now, you can't get one (easily). If you have a need for Linux (I do, it runs the applications I want), you will typically get the machine with Windows, and then replace it with Linux. Microsoft gets money, and has one less customer to support.
Re:A reaction? (Score:5, Insightful)
SteamBox (Score:5, Insightful)
Re: (Score:2)
Is it? I'm interested in Valve's new controller, but not in a Steam Box, and I don't know anyone who is. Breaking Microsoft's monopoly on AAA games would be terrific, but I have serious doubts that the Steam Box is going to do it.
Re: (Score:2)
Once the majority of PC games get SteamOS ports, Microsoft is in big trouble as their OS costs money...
Not really, since Windows 8 OEM costs ~$50 and the cheapest steambox announced was $500 it's really not a consequential cost for those interested in PC gaming. Heck, if you can get your system price under $250 MS will drop the OS license to $15 so even on cheap hardware it's not really a major consideration.
Re: (Score:2)
It's Windows dropping as the dominant platform on the consumer desktop. Once grandma's nerdy grandson gets Linux on his PC instead of Windows, that's what he'll be giving to grandma instead of fixing her aging windows box. That is what will drive MS into the annals of history.
Re:SteamBox (Score:5, Insightful)
For me to make a game work on Steam Box, then that means I'm going to make it run on Linux without Steam Box, and that means it's a no brainer for it to run on Mac and MS Win too. I use C+OpenGL as the base of my cross platform development toolchain, and the platform abstraction layer handles all the OS / device specific windowing, input, and audio. Hey, I had to write it once, why not write it such that it'll run on as much platforms as possible if I'm starting out making the engine from scratch?
What MS would have to do is convince me that I should just ignore Steam, Linux, and Mac to use MS's platform specific DX solution. It's an arbitrary choice in terms of technology (seriously, we're talking fucking drivers here man, it's the hardware that makes the difference). Since it will cost me the same time and energy to choose OpenGL, and as a bonus I get these other marketsegments for free (I love free money), plus free marketing via appearing on Steam and Steam Box... MS is going to have to pay developers to make MS exclusives -- Same shit goes for consoles: Why would I NOT want to make more money by selecting a cross platform engine?
Right. That's what I thought, there's no real strong argument in MS's favor except if you've already gone with their toolset and you're firmly vendor locked to a dev environment they control (like a fool). Even Unreal4 will support Linux. No one force is going to destroy MS's monopoly, but compatibility with the Steam Box (and its controller) is actually a pretty good reason to not use DX for lots of devs considering the huge volume of folks with steam accounts who can now use them on Linux thanks to Valve getting their games running on Steam Box. MS: We have some slight improvements and you can get at a lower level API (read: better tied to the platforms we'll obsolete soon).
Non-MS: More marketshare = Free money & No vendor lock in or planned obsolescence. Hmmm, I don't even need to think about this: Cross platform or bust.
As for the monopoly on AAA games? See the cross platform games on consoles. Now see how Unreal and Source will both run on Linux. The battle is basically over. Going forward publishers will want more money. OpenGL also makes it far easier to port less demanding games to mobile. I just really can't find a good reason to go with DirectX unless that's what you're already shackled too. Any new engine devs would be idiots to not go cross platform. With W8 MS has demonstrated lack of ability to execution on their core competency (OS's people want to use). So, why invest in a windows only solution and bet it all on an unsure thing especially considering the fast growing mobile / tablet gaming segment?
MS has bank. They'll be around for a while, but it's only a matter of time. Really, it's 2014. The OS should be irrelevant. Applications are what people use devices for, not OSs. MS should just save money and release their own Linux distro.
Re: (Score:2)
I mostly agree with you but you have to consider that unfortunately there are a LOT of XBox systems out there and if a game dev wants to target that audience (which is a lot bigger than the PC gaming audience) then DX is required... no OpenGL API support on XBox (big surprise.)
This is why all the major game engines support both DX and OpenGL.
Re: (Score:2)
On the other hand, getting a video card to work in linux last time I checked (granted a couple years) was a pain and you had to do backflips and jump through flaming hoops. I don't know enough about linux to get it working. I'm a cs guy for crying out loud...
Probably that was the problem?
If you have an nVidia card, for past 5+ years installation of the proprietary driver was a matter of a single click and a reboot. And that single click in a settings window called "Additional Drivers". Hard to miss if you trying to figure it out on your own.
Haven't tried ATI cards in recent years, but I'm pretty sure Ubuntu/derivatives does something about them too.
There were problems in the past with the very very recent nVidia cards, but they are updating drivers fairly
Re: (Score:1)
I'm interested in the steam box. Games would be the only reason for me to keep Windows around.
And possibly IAR Workbench. But since they don't want to support Linux, I'm trying to move my development team away from that...
Re: (Score:3)
M$
I didn't know that was still in style.
Re: (Score:1)
This is my conclusion too. And this is a few days after Steam released their DirectX-to-OpenGL source.
Valve Open Sources Their DirectX To OpenGL Layer [slashdot.org]
Re: Options (Score:3)
DirectX has been MS only since it's inception, it has always had the implication of whatever you are making not being able to use of windows.
The difference now is that OpenGL is no longer crap and DirectX is no longer the clear front runner, so people can start saying again "hey, why am I using DX?" Rather than taking for granted that it is better for games.
Re: (Score:2)
Re: (Score:2)
People are already making far more OpenGL games than DirectX games. Look at the Apple AppStore or GooglePlay games list then compare that to Windows desktop, Xbox (all games and variations) and Windows Phone. Apple alone blows MS away, add all the stuff from Android as well ... well, DirectX isn't the leader in the gaming world, not by a long shot.
Re: (Score:2)
Re:Options (Score:4, Interesting)
It's been like that for nearly two decades now. At least since 1994, when software rendered Quake came out. SGI pushed to get OpenGL out as a software API to eliminate the need for in-house software renderers. Microsoft realized they needed their own 3D software API to keep up to date with the game industry developments. 3Dfx came out with the Glide API for hardware piggyback boards. Nvidia formed from SGI engineers who wanted to see PC boards, then there was a race to be the first fully complete TLC (texturing, lighting and clipping) hardware accelerated boards, then another race for programmable fragment shading, then vertex, geometry and compute shaders.
The ideological battle has continued. Microsoft has always seen themselves as the supplier of software API's. In response, The Khronos consortium formed to provide an open standard alternative to proprietary API's (www.khronos.org).
Multiple platforms (Score:1)
Windows 8, Windows 8.1, Windows RT.
windows 9 and maybe hacked for 7 as well (Score:2)
windows 9 and maybe hacked for 7 as well
But? "But"?! (Score:3)
Like AMD's Mantle API, it promises reduced CPU overhead and lower-level access to graphics hardware. But DirectX 12 won't be limited to one vendor's hardware.
Nor will Mantle. I suppose that fact checking really fell out of fashion here on - oh, wait...
Re: (Score:1)
Yeah but unlike Mantle, DX 12 will actually work on more than one vendors' hardware. Mantle on anything but GCN is vapourware.
Still at least we can both agree that this is ridiculous:
OpenGL can get the similar 'close to the metal' performance as Mantle and DirectX 12.
The point of Mantle & DX12 is that they are more efficient APIs. The OGL talk is around the fact that you can get good performance if you rearchitect your game around the vagaries of current OpenGL drivers. So that only raises OGL to the
Re: (Score:1)
Yeah but unlike Mantle, DX 12 will actually work on more than one vendors' hardware.
Yes, it will work on two vendors' hardware. Meanwhile, Mantle could easily work on Android devices, for example. Or on Linux@anything (POWER etc.) - look ma', no windows!
Re: (Score:2)
Setting up (Score:3)
Seems like Haswell support limited (Score:2)
The summary says that Intel Haswell CPUs will support DirectX 12, however it seems that only Iris and Iris Pro iGPUs will support it according to this article:
http://wccftech.com/microsofts... [wccftech.com]
DirectX 12 is now just a wrapper (Score:2)
for openGL?
imokwiththat.jpg
Opengl Extensions anyone? (Score:1)
Mantle not limited to one vendor's hardware (Score:2)
Like AMD's Mantle API, it promises reduced CPU overhead and lower-level access to graphics hardware. But DirectX 12 won't be limited to one vendor's hardware.
Mantle will work on this hardware as well, and won't be limited to one vendor's operating system. From AMD's Mantle FAQ [amd.com]
Wide Market - Options??? (Score:1)
Gaming, today its a really complicated market and I don't think anyone knows where its going. -
- Apple and Android absolutely vast potential market, but very complex to market in, low margins and tight constraints (esp with Apple). Many companies in this market go bankrupt.
- XBox One & PS4 traditional high end gaming machines. In current tough market high prices make sales slow. XBOX One is the obvious real reason for Direct X 12.
- XBox 360 & PS3 still major competitors with much wider user base tha