When we developed Mantle, it was really at the request of game devs who saw what was possible on the console in terms of FLOPS/W and perf/W. There's just an incredibly deep level of access and control that was entirely missing on the PC, because there were no graphics APIs that remotely behaved like what the consoles offered.
We knew that bringing the industry over to the idea of low-overhead APIs would strengthen the bridge--for devs and ourselves--between PC and console. It could improve portability. It could allow for code reuse, which minimizes porting mistakes. It could allows performance enhancing techniques on console (async compute anyone?) to finally run on the PC.
The interest level in Mantle was enormous. During its day, it was the fastest-growing PC graphics API ever introduced. That honor now goes to DirectX 12, but the trend in both cases is very clear: game devs needed and wanted
morethan what they were being given by "traditional" APIs.
And game devs cut their teeth on these new APIs on Radeon hardware. They learned best practices from AMD. They learned how to port to these APIs from AMD to AMD. For years we were the only game in town when a game dev wanted to know more about how to control a modern GPU with these new APIs.
I think Mantle was much more innovative than people give it credit for, mostly because many don't understand the significance of an "API" or all the little features inside that API. There are several AMD-invented API features that are now standard in the major graphics APIs. This is just a sampling, but there are easily 4-5 more I'm forgetting ATM:
- Explicit multi-adapter
- Asynchronous compute/shading
- Explicit framebuffer management
- Multi-threaded command buffer recording
- Explicit frame management
Our "win condition" for Mantle was either growing it into an industry-standard API of its own, or influencing an API very much
like Mantle to become the standard. There is a lot of pride in this industry, and chances were low that an API owned by a graphics vendor would ever be adopted by other graphics vendors. So when the opportunity came to migrate the spec to serve as the foundation of Vulkan, it was a no-brainer. This was our chance to realize one of the win conditions for Mantle.
Along the way, we had the opportunity to help develop DX12, also. This allowed us to share our philosophies and ideas on how APIs should work into DirectX as well. We've been serving in this capacity for DX for many years, but DX12 came at a good time for us.
And now here we are. All the major graphics APIs have features we invented for Mantle, and are philosophically similar to Mantle. And they run on everyone's hardware.
That's what necessitated the transition to Vulkan. But it wasn't by accident.