Microsoft: Xbox One Will Exclusively Rely on Direct3D 11 API.

After Advanced Micro Devices unveiled its Mantle application programming interface earlier this month, some believed that Mantle is a version of API that powers Microsoft Xbox One or Sony PlayStation 4 game consoles that are based on AMD Radeon graphics hardware. Nonetheless, Mantle is AMD-exclusive API for personal computers. Microsoft Xbox One will rely on DirectX 11-class API, whereas Sony’s PS4 will feature its own interface.

According to Microsoft itself, the Xbox One graphics API is “Direct3D 11.x” and the Xbox One hardware provides a superset of Direct3D 11.2 functionality. Other graphics APIs such as OpenGL and AMD’s Mantle are not available on Xbox One. Usage of Direct3D 11 on Xbox One has both pros and cons. On the one hand, developers creating content for the Xbox One are able to use the same programing constructs across Windows and Xbox, and benefit from all the improvements that have been introduced on Windows. On the other hand, Direct3D is not the most efficient API and therefore there can be API-related performance limitations. Microsoft, though, claims that the Direct3D 11.* for Xbox One features significant enhancements in the area of runtime overhead, which results in a very streamlined, “close to metal” level of runtime performance. Therefore, there is no need for a special close-to-metal API on Xbox One.

“What Mantle creates for the PC is a development environment that’s similar to the consoles, which already offer low-level APIs, close-to-metal programming, easier development and more (vs. the complicated PC environment). By creating a more console-like developer environment, Mantle: improves time to market; reduces development costs; and allows for considerably more efficient rendering, improving performance for gamers. The console connection is made because next-gen uses Radeon, so much of the programming they are doing for the consoles are already well-suited to a modern Radeon architecture on the desktop; that continuum is what allows Mantle to exist,” an explanation by AMD reads.

Mantle, a cross-platform application programming interface (that will only support Windows operating system initially) designed specifically for graphics processing units based on graphics core next (GCN) architecture, presenting a deeper level of hardware optimization. Being low-level API, Mantle can bypass all the bottlenecks modern PC/API architectures; according to AMD, Mantle enables nine times more draw calls per second than DirectX and OpenGL thanks to lower CPU overhead. AMD and EA/DICE announced a Mantle renderer for the forthcoming Battlefield 4 game in December, 2013. Mantle will be detailed further at the AMD Developer Summit, APU13, taking place in November.

Two main purposes of Mantle are to speed up game performance on AMD hardware and possibly introduce exclusive visual effects. 3dfx Glide, proprietary API by 3dfx, served the same purposes over a decade ago, back in the 1990s. Nonetheless, AMD does not seem to want to compare Mantle to Glide. Moreover, AMD hopes that eventually Mantle will be an industrial standard.

It is interesting to note that Mantle was generally a joint project between AMD and game developer DICE (a subsidiary of Electronic Arts). The first fruits of Mantle will be renderer for Battlefield 4 as well as renderers for other Frostbite 3 engine-based titles (new Command and Conquer, Need for Speed Rivals, etc.).

Preview

CPU-GPU interaction can be paralelized, it's the programming logic and input processing that can't. For each cycle, generally represented by a frame in FPS, all input must be processed, logic based on that input must be handled, and graphic and sound output must be generated.

Parts inside this cycle can be paralelized, but all parts must be finished and synched before a new cycle begins. For example, you can't start logic processing before input is received and handled, and you can't know what will change in current graphic frame before logic processing finishes.