If true, this is a good move by Microsoft. The whole point of this exercise is to be closer to the metal, so why reinvent the wheel.
It's something of a Direct3D tradition to design the API around one hardware vendor's state of the art. Direct3D 9 was pretty much based on what the ATI Radeon 9700 could do. At the time this was a serious inconvenience to NVIDIA who had taken a different tack with the Geforce FX (I think it was -- it's been a while).
I am not a graphics / engine programmer but I know a decent amount of what goes into programming a game, and I have to call "suspect" on the claim that low level graphics API programming was heretofore only available on game consoles like the Microsoft Xbox, Microsoft Xbox 360 and Microsoft Xbox One!
From Microsoft's warped perspective, where dogfooding is a religion, it's more or less correct.
You've always been able to get a lot more out of consoles considering their specs; the 360 was marginally better than the state of the art of PC hardware, for a few months, but being able to code right to the metal (not as much as on an Amiga or Nintendo, but relative to the PC) gave an efficiency that made the games unmatched for years.
AMD's recently released Mantle is the first exception on the PC, and DirectX 12 is reportedly quite similar. Bing it on your Zune for further reading.
I am a graphics engine programmer. This is not an absolute. Rather, a graphics API is an abstraction of a generic GPU, so it is never as low-level as it could be. The more the API provides ways to expose the underlying hardware more directly, the more the API can be said to enable "low-level" programming. It's relative. You can hear Carmack talk about this issue in some of his QuakeCon keynotes.
I guess this means that if I want to get the most out of my games I'll have to "upgrade" to Windows 8.1. Not super excited about having to configure away all of the metro garbage.
Or you could just wait till a DX12 game is out and decide if its worth upgrading. DX11 got a fairly lukewarm response from most studios when it came out.
I am not excited, as MS's track record shows, any of their "improvements" are not backwards compatible with old OSes. For example IE11 is so awesome! SO AMAZING! Not compatible with Windows XP, yet Chrome and Firefox is still.
MS's desire to ship their latest OS has hurt developers over the years. I hope people still chose Open GL over DX-whatever.
> MS's track record shows, any of their "improvements" are not backwards compatible with old OSes.
What do you mean? All new versions of all commercial software have new improvements/features. If they just released all of them for free on the previous version, they might as well just shut down their company.
> Not compatible with Windows XP, yet Chrome and Firefox is still.
Well IE since version 7 uses mandatory integrity control which is a kernel feature of Vista and above. XP only has DACLs. I believe what they did initially was just disable the protected mode feature when IE ran on XP.
Firefox is woefully behind other browsers in this particular aspect so it doesn't need to worry about it. Chrome does the same thing as IE on Vista+. They wrote their own sandbox because its a cross platform product which is why it works on XP.
So certainly, Chrome would be your choice if you want a single browser that runs on XP as well as Vista. That would matter only to businesses or computer labs or places where there is a large deployment of software across multiple OS versions. For home users, it doesn't matter. People just use whatever version of windows came with the PC.
It makes the job of engine developers somewhat easier in the long run, but very few game developers are writing raw DirectX these days.
And (almost) nobody's targeting just Microsoft devices, even developers who are paid for temporary exclusives. It's all about the cross-platform engines.
Mantle has the same CPU savings, and during discussions on that game developers have talked about how in many (most?) games, up to 50% of your CPU time is spent in the drivers. Considering how many games I've run into lately where single-core performance is the bottleneck, this doesn't surprise me at all.
Mantle and DX12 strip out a lot of layers, optimize a lot of what it keeps, and spread a good chunk of the remaining load over multiple threads, meaning that instead of trying to use 120% of core 0 and 15% of cores 1-3, you can use 60% of core 0 and 25% of cores 1-3 (just as a hypothetical made-up example).
Your first assertion has no bearing in reality. There's nothing prohibiting a closed-source API form being as fast as or faster than an open-source one. Your second assertion does not imply that your first is correct.
It may be that the current example of open-source are faster than the current example of closed-source, and there may be very real advantages that the open-source approach brings about that pushes the status quo towards as you describe, but there's nothing mandating that. I'm not sure why you'd therefore assert that.
[+] [-] higherpurpose|12 years ago|reply
http://semiaccurate.com/2014/03/18/microsoft-adopts-mantle-c...
[+] [-] wmf|12 years ago|reply
[+] [-] pavlov|12 years ago|reply
It's something of a Direct3D tradition to design the API around one hardware vendor's state of the art. Direct3D 9 was pretty much based on what the ATI Radeon 9700 could do. At the time this was a serious inconvenience to NVIDIA who had taken a different tack with the Geforce FX (I think it was -- it's been a while).
[+] [-] pktgen|12 years ago|reply
[+] [-] melling|12 years ago|reply
[+] [-] owenjones|12 years ago|reply
[+] [-] reitzensteinm|12 years ago|reply
You've always been able to get a lot more out of consoles considering their specs; the 360 was marginally better than the state of the art of PC hardware, for a few months, but being able to code right to the metal (not as much as on an Amiga or Nintendo, but relative to the PC) gave an efficiency that made the games unmatched for years.
AMD's recently released Mantle is the first exception on the PC, and DirectX 12 is reportedly quite similar. Bing it on your Zune for further reading.
[+] [-] mhurron|12 years ago|reply
[+] [-] greggman|12 years ago|reply
[+] [-] benched|12 years ago|reply
[+] [-] hudo|12 years ago|reply
[+] [-] KamiCrit|12 years ago|reply
[+] [-] bestdayever|12 years ago|reply
[deleted]
[+] [-] shmerl|12 years ago|reply
[+] [-] pjmlp|12 years ago|reply
Most of the studios use engines nowadays, so Mantle impact on studios besides AMD blessed ones, remains to be seen.
[+] [-] Rickasaurus|12 years ago|reply
[+] [-] dmm|12 years ago|reply
[+] [-] ksk|12 years ago|reply
[+] [-] bananas|12 years ago|reply
[+] [-] valarauca1|12 years ago|reply
I wouldn't worry about this.
[+] [-] Justsignedup|12 years ago|reply
MS's desire to ship their latest OS has hurt developers over the years. I hope people still chose Open GL over DX-whatever.
[+] [-] ParkerK|12 years ago|reply
Older versions of FF are yes, but the latest is not supportedhttps://support.mozilla.org/en-US/kb/firefox-no-longer-works...
There's no reason they should be expected to put dev resources into an OS that's 12 years old.
[+] [-] ksk|12 years ago|reply
What do you mean? All new versions of all commercial software have new improvements/features. If they just released all of them for free on the previous version, they might as well just shut down their company.
> Not compatible with Windows XP, yet Chrome and Firefox is still.
Well IE since version 7 uses mandatory integrity control which is a kernel feature of Vista and above. XP only has DACLs. I believe what they did initially was just disable the protected mode feature when IE ran on XP.
Firefox is woefully behind other browsers in this particular aspect so it doesn't need to worry about it. Chrome does the same thing as IE on Vista+. They wrote their own sandbox because its a cross platform product which is why it works on XP.
So certainly, Chrome would be your choice if you want a single browser that runs on XP as well as Vista. That would matter only to businesses or computer labs or places where there is a large deployment of software across multiple OS versions. For home users, it doesn't matter. People just use whatever version of windows came with the PC.
[+] [-] frik|12 years ago|reply
[+] [-] voltagex_|12 years ago|reply
[+] [-] JetSpiegel|12 years ago|reply
[+] [-] jwr|12 years ago|reply
[+] [-] ksk|12 years ago|reply
[+] [-] Lavinski|12 years ago|reply
[+] [-] TillE|12 years ago|reply
And (almost) nobody's targeting just Microsoft devices, even developers who are paid for temporary exclusives. It's all about the cross-platform engines.
[+] [-] hughes|12 years ago|reply
[+] [-] danudey|12 years ago|reply
Mantle has the same CPU savings, and during discussions on that game developers have talked about how in many (most?) games, up to 50% of your CPU time is spent in the drivers. Considering how many games I've run into lately where single-core performance is the bottleneck, this doesn't surprise me at all.
Mantle and DX12 strip out a lot of layers, optimize a lot of what it keeps, and spread a good chunk of the remaining load over multiple threads, meaning that instead of trying to use 120% of core 0 and 15% of cores 1-3, you can use 60% of core 0 and 25% of cores 1-3 (just as a hypothetical made-up example).
[+] [-] jjcm|12 years ago|reply
[+] [-] ace22b|12 years ago|reply
[+] [-] wtracy|12 years ago|reply
[+] [-] joenathan|12 years ago|reply
[+] [-] conkrete|12 years ago|reply
This is why games like Left-4-Dead2 using OpenGL run substantially faster (More FPS) (http://www.extremetech.com/gaming/133824-valve-opengl-is-fas...)
[+] [-] NamTaf|12 years ago|reply
It may be that the current example of open-source are faster than the current example of closed-source, and there may be very real advantages that the open-source approach brings about that pushes the status quo towards as you describe, but there's nothing mandating that. I'm not sure why you'd therefore assert that.
[+] [-] Lavinski|12 years ago|reply
[+] [-] taspeotis|12 years ago|reply
Why are you comparing implementations and standards on a metric that's only application to implementations?
[+] [-] frozenport|12 years ago|reply