Microsoft Comments on State of Direct3D, Mantle Support, & Names XB1 API “Direct3D 11.x”by Ryan Smith on October 15, 2013 9:00 AM EST
In a somewhat unusual technical/promotional blog entry called “Raising the Bar with Direct3D”, Microsoft has released some additional details on the version of Direct3D for Xbox One, along with providing a general summary of the state of Direct3D 11.2.
First and foremost, for the Xbox One we finally have an official name for the consoles version of Direct3D along with some confirmation of some general details about the API. The Xbox One’s version of the API is being called Direct3D 11.x – X as in Xbox, not an algebraic X – and as expected it’s a superset of Direct3D 11.2. Microsoft doesn’t go into further detail on what else that superset contains, but traditionally we’d expect to see further API calls that are specifically designed to take advantage of the underlying APU, including of course the low-level programming constructs to do close to metal programming and fully exploit quirks such as the console’s 32MB of eSRAM.
Furthermore it’s interesting to note that Microsoft also took the time to specifically mention API overhead in a high-level context, and that they’ve been doing a lot of work to chip away at said overhead for the Xbox One. This is fairly similar to how Microsoft is said to have approached Direct3D for the 360, being able to exploit the fixed platform to remove some of the overhead from abstraction while maintaining the functionality of the high level API functions.
Moving on to Direct3D 11.2 in general, the next section of the blog is primarily a summarization of the Direct3D 11.2 feature set, with Microsoft primarily reiterating support for tiled resources (the headline feature for 11.2) along with briefly mentioning other features such as pre-compiled headers and CPU/GPU memory sharing improvements. Unlike Direct3D 11.1 and Windows 8, 11.2 is coming with a Windows point update, so it’s a similarly smaller addition to Direct3D.
However it’s the final section of Microsoft’s blog that may be the most interesting, although it’s also the least detailed. In discussing the future of Direct3D, Microsoft specifically mentions their general commitments to improving Direct3D alongside “bringing the lightweight runtime and tooling capabilities of the Xbox One Direct3D implementation to Windows,” though providing no details on how they intend to accomplish the latter. Assuming Microsoft intends to keep up a yearly(ish) development cadence for Windows, this may be something we see as soon as next year. There’s certainly quite a bit of interest in cutting down on the CPU overhead in graphics APIs, due in part to declining improvements in single-threaded CPU performance gains, so this is something that’s going to be worth keeping an eye on.
Finally, in an unexpected move, Microsoft also used the blog to quickly address the subject of AMD’s Mantle API, specifically saying that the Xbox One doesn’t support it nor OpenGL. The fact that Mantle isn’t supported comes as no surprise – Xbox One already has its own low level constructs versus the still in development Mantle – but we weren’t expecting Microsoft to comment on the matter since they aren’t involved in the development of Mantle. Though this unfortunately doesn’t shed any further light on the big question of just what Mantle adopts from the low-level programming constructs in Direct3D 11.x.
Source: Microsoft Windows Blog
Post Your CommentPlease log in or sign up to comment.
View All Comments
Fatgigs - Tuesday, October 15, 2013 - linkI'd to see you guys talk more about this on the next podcast. Thanks.
Wreckage - Tuesday, October 15, 2013 - linkMantle is dead even before it launched. Without console support, no developer will want to maintain 2 code paths for no reason.
Kevin G - Tuesday, October 15, 2013 - linkMantle could still exist on the PS4 side of things, thus giving it a console connection.
Then there is potential for it to exist on the Steam Box too.
Wreckage - Tuesday, October 15, 2013 - linkAMD has confirmed that Mantle is "PC only"
HisDivineOrder - Tuesday, October 15, 2013 - linkSteam Machine is about open standards. They're making OpenGL fly. They don't want another API that's locked down to one vendor. Hell, not even just one vendor. It's a FRACTION of one vendor since most AMD APU's and any card before the 7xxx series is going to fail to run it, too.
I wouldn't count on seeing Mantle in SteamOS very prominently, if at all.
Gigaplex - Tuesday, October 15, 2013 - linkThe Mantle API isn't locked to one vendor, AMD have said that others are free to implement it.
ddriver - Wednesday, October 16, 2013 - linkYeah, as much as AMD implemented CUDA... No vendor will EVER implement an API designed by a competitor, especially one tailored closely to a fundamentally different hardware architecture, 3rd party open standards like OpenGL are the only solution. And quite frankly, OpenGL is low level enough. Shame on MS for spending so much efforts on preventing developers from using GL in an ill attempt to prevent its monopoly from collapsing.
banvetor - Tuesday, October 15, 2013 - linkDear Nvidia employee,
Thanks for sharing your comments.
Ryan Smith - Tuesday, October 15, 2013 - linkOf course that assumes that Mantle is significantly different from D3D11.x's low level programming constructs. We won't have the full details until next month, but we are still expecting the two to be highly similar, if not identical in all the important respects. After all, the goal is to ease portability.
Though whether further developers besides DICE pick it up remains to be seen. AMD does need to be able to attract developers to take the time to support Mantle, even if the work is trivial.
"All alligators are crocodiles, but not all crocodiles are alligators"
Wreckage - Tuesday, October 15, 2013 - link"Of course that assumes that Mantle is significantly different from D3D11.x's low level programming constructs."
That almost makes it sound like they just "rebadged" Microsoft's API as Mantle. But why would Microsoft go out of there way to state that Mantle will not work on the Xbox One.... and AMD confirmed it would not be on consoles....
Too much marketing, we need one of their software guys in here to clear it all up.