GDC — At the Game Developers conference this morning, Microsoft revealed the first details about its next-gen DirectX 12 API. I’ve got a little free time between briefings and keynotes just now, so let me try to cover the highlights briefly.
DirectX 12 is, of course, all about improving performance by cutting CPU overhead and giving developers more direct control of the hardware. There was talk of "lower level abstraction than ever before" and "unprecedented performance." Microsoft showed DirectX 11 and DirectX 12 versions of the latest 3DMark release running on a Core i7-4770K-powered system. In the DX11 version, most of the CPU load was on a single thread, and the other cores were underused. In the DX12 version, workload distribution was even across the cores, and overall CPU utilization was down 50%.
In this respect, DirectX 12 will mirror many of the improvements AMD implemented in its own Mantle API. We’ve suspected this development since the first DX12 pre-announcements were made.
The big news today was that DX12 will support more than just the PC and will work on existing hardware. Microsoft will bring DX12 to all of its platforms, including the Xbox One and, if I understand correctly, Windows Phone. This decision should have huge implications for portability across platforms, and one would expect it to make life easier for developers in a number of ways.
Which hardware will be DX12-compatible? AMD said all of its Graphics Core Next-based Radeon GPUs (i.e. Radeon HD 7000 series and newer) will work with the new API. Nvidia pledged support for all Fermi, Kepler, and Maxwell (i.e. GeForce GTX 400 series and newer) parts. The keynote included a demo of Forza 5 running in DirectX 12 mode atop an Nvidia GPU. Finally, Intel said the integrated graphics in its existing Haswell processors will also have DX12 support. All in all, Microsoft estimates that 100% of new desktop GPUs, 80% of new gaming PCs, and 50% of PC gamers will be able to take advantage of the new API.
Microsoft said DirectX 12 will premiere in next year’s crop of holiday-season games. A preview release of the API is coming later this year.