In a previous article about AMD's (AMD 1.07%) Mantle graphics API, we looked at two talks set to be presented at the 2014 Game Developers Conference, one about DirectX and one about OpenGL. The conference has come and gone, and the presentations reinforce my opinion that Mantle has no chance of succeeding in the long term -- or any term, for that matter. DirectX 12, Microsoft's (MSFT 1.28%) next graphics API, was announced, promising Mantle-like performance gains, but the real nail in the coffin for Mantle was the presentation on OpenGL. While DirectX 12 won't be released until late 2015, OpenGL can match Mantle's improvements right now, in a cross-platform and vendor-agnostic way. Without anything unique to offer, and only supported by a fraction of GPUs, Mantle doesn't stand a chance.
Microsoft gets serious, in about a year and a half
One of Mantle's big selling points was that it eliminated much of the overhead involved with Microsoft's DirectX, and it indeed delivered significant improvements in performance in CPU-bound situations. High-end gaming PCs with powerful CPUs and GPUs saw minimal increases in performance, but Mantle's accomplishments were nevertheless meaningful.
The uphill struggle for Mantle was always going to be getting developers to integrate the API into their games and engines, but with DirectX 12 promising to deliver similar improvements, there seems to be little reason to support another API, especially since AMD's GPUs are only in a fraction of PCs.
One interesting point in Microsoft's presentation is that the Xbox One will support DirectX 12, and that is should bring with it an increase in performance. Currently, the console supports a modified version of DirectX 11 that runs with extremely low overhead, which is possible because there is only one hardware configuration to optimize for. The fact that DirectX 12 will improve performance on the Xbox One is quite a surprise, and it means that overhead on PCs, smartphones, tablets, and any other Windows devices will be radically reduced.
Microsoft needs to make sure that Windows remains the standard platform for games, and having the same API span all Windows devices while bringing overhead down to Mantle-like levels is a great way to accomplish that goal. Once DirectX 12 arrives toward the end of 2015, it won't make much sense for developers to implement Mantle.
Why Mantle may be dead before that
If DirectX was Mantle's only competition, then the API would have the better part of two years to gain prominence and acceptance while offering superior performance. But there's a third player in the world of graphics APIs, OpenGL, and it turns out that Mantle doesn't offer anything special at all.
OpenGL has been around for a long time, and while most triple-A PC games use DirectX, OpenGL is cross-platform and the de facto standard on mobile devices. The title of the GDC presentation on OpenGL was "Approaching Zero Driver Overhead," and it laid out techniques currently available in OpenGL that lead to drastic, Mantle-like improvements. The presentation has 130 slides, most of them technical, but the most important slide is this one:
This graph shows the number of objects drawn per second with DirectX 11, the very top bar, compared to OpenGL using the various techniques introduced in the presentation. The details aren't important, but what is important is that OpenGL can improve upon DirectX11 by as much as 1,800%. All of these techniques are available today.
The bottom line
AMD's Mantle may have pushed Microsoft toward improving DirectX, but it gives the company absolutely no advantage going forward. OpenGL can already deliver similar performance increases, and DirectX 12 will do the same when it's released. Developers have no reason to adopt Mantle, especially since it only works on AMD GPUs. The API will slowly drift into obscurity. Mantle is a buzzword, nothing more.