Meet the next generation of gaming graphics. DirectX 12 is faster, lighter-weight, and more predictable said Anuj Gosalia, Development Manager for Graphics at Microsoft, at the Game Developers Conference on Thursday, calling the new tech "the beginning of a new era in graphics APIs."
Gosalia started his talk with some truisms that influenced the design of DirectX 12: GPU performance will continue to increase aggressively, while CPU core count is unlikely to aggressively increase.
So what did developers want from DirectX and Microsoft? It was manifold: a console-like "closer to the metal" API, more control, an elimination of overhead, predictability, consistency, advanced rendering techniques, better debugging tools, and broad availability.
A tall order.
Meet DirectX 12
"The engineers at Microsoft and the GPU manufacturers have been looking at this for a long time, and we came up with DirectX 12," said Gosalia.
DirectX 12, and in particular Direct3D 12, went down the list and checked everything off: DirectX 12 is faster, allows more complexity, works on all Microsoft platforms (consoles, computers, tablets), and has better support tools. After all, as Gosalia said, "Our API is only as good as the tools you have to use it."
If you're a lay-person, feel free to skip this paragraph full of tech jargon (taken from Gosalia's slides):
With DirectX12, you're looking at reduced overhead for state changes; Efficient reuse of rendering commands. Multithreaded scalability. Flexibile and efficient resource blinding model; App-controlled graphics memory heaps; Amortizing create/destroy costs; Ultra-low cost re-allocates; Free threaded resource and heap management; Access to swizzled resources; Compressed resources (Jpeg, ASTC-LDR) in hardware; The lower-level API also allows the app to track GPU pipeline status, control resource state transitions, and control resource renaming.
Looks like nonsense to most of you, right? Especially "swizzled"--surely that can't be a word.
So what does DirectX 12 mean for you, the consumer? Easy: It's more efficient--and thus faster--than what came before, providing a leap ahead in graphics potential. Gosalia showed off DirectX 12's power with a demonstration of the 3DMark benchmarking software. With DirectX 11, the machine's four cores were unbalanced--one core carried most of the load, while the other three sat mostly idle.
With DirectX 12 running the same demo, all four cores carried a balanced amount of the workload, and the overall workload was reduced by half.
For a real-world demo, Gosalia trotted out Chris Tector of Turn 10 Studios to show off DirectX 12's capabilities with Forza 5 on a PC powered by an Nvidia Titan Black GPU. "At Turn 10, we're strictly a console developer and we're used to going as close to the metal as we can," said Tector.
Turn 10 tried to port Forza 5 to DirectX 11, but found massive CPU overhead created a lot of stuttering. The DirectX 12 demo we saw, on the other hand, ran at a smooth framerate primarily because many of its new features--such as bundling resources--were drawn directly from Microsoft's Xbox One tools.
"We're excited to see console-style development coming to the PC," said Tector.
Hardware makers get hot and bothered
And he wasn't the only one excited. After Tector, a parade of industry figures came out to talk about their relation with Microsoft and DirectX 12.
AMD's Raja Koduri said DirectX 12 was like "getting four generations of hardware ahead," all at once. Intel's Vice President of Platform Engineering Eric Mentzer shared a similar sentiment, with, "This is absolutely, I think, the most significant jump in technology in a long, long time."
Nvidia's Senior Vice President of Content and Technology, Tony Tamashi, took some shots at AMD's similar Mantle initiative, saying they're excited about DirectX 12 because it supports existing goals "within the framework of existing graphics APIs," without the need to fragment the community.
Even Qualcomm got in on the game, touting the fact that DirectX 12 sees both improved power efficiency and performance on mobile hardware.
When can you get it?
Not for a while. Microsoft is targeting DirectX 12's release alongside holiday 2015 games, though they're planning a preview for later this year. Gosalia also hinted at an early access program, though he was cagey about details.
Continuing DirectX's legacy and purpose, most recent hardware will be supported--for instance, Intel's fourth generation Core processors and all Nvidia hardware from Fermi architecture onwards. Microsoft estimates that approximately 50 percent of existing PC game enthusiasts will have the necessary hardware to run DirectX 12 at launch, and of course the technology will be coming to the Xbox One.
However, Microsoft did not commit to Windows 7 support. In fact, with a launch date of 2015, there's a good chance Microsoft is targeting DirectX 12 for the rumored release of "Windows 9," whatever that ends up being.
Regardless, it seems like a huge step forward for games technology. I look forward to getting my hands on it sometime later this year.