There has been quite a bit of speculation on which API and/or which vendor was first… I will just list a number of facts, and then everyone can decide for themselves.
- Microsoft’s first demonstrations of working DX12 software (3DMark and a Forza demo, Forza being a port from the AMD-powered Xbox One), were running on an nVidia GeForce Titan card, not AMD (despite the Xbox One connection and the low-level API work done there).
- For these two applications to be ported to DX12, the API and drivers had to have been reasonably stable for a few months before the demonstration. Turn 10, developers of Forza, claimed that the port to DX12 was done in about 4 man-months.
- nVidia has been working on lowering CPU-overhead with things like bindless resources in OpenGL since 2009 at least.
- AMD has yet to reveal the Mantle API to the general public. Currently only insiders know exactly what the API looks like. So far AMD has only given a rough global overview in some presentations, which were released only a few months ago. And actual beta drivers have only been around since January 30th. Microsoft/nVidia could only have copied its design through corporate espionage and/or reverse engineering in an unrealistically short timeframe.
- AMD was a part of all DX12 development, and was intimately familiar with the API details and requirements.
- DX12 will be supported on all DX11 hardware from nVidia, from Fermi and up. DX12 will only be supported on GCN-based hardware from AMD.
- The GCN-architecture marked a remarkable change of direction for AMD, moving their architecture much closer to nVidia’s Fermi.
Update: This article at Tech Report also gives some background on DirectX 12 and Mantle development: http://techreport.com/review/26239/a-closer-look-at-directx-12