The latest patch for World of Warcraft: Battle for Azeroth, version 8.1.5, includes the user-mode components of the Direct3D 12 (D3D12) runtime, modified to run on Windows 7. Blizzard found that there was a “substantial framerate improvement” from updating WoW to use D3D12, thanks to D3D12’s improved support for distributing the work of building graphical scenes across multiple threads. For complex environments with lots of on-screen objects, this multithreading can provide a healthy performance boost.
Microsoft insists that Windows 10 remains the best place to run D3D12 applications. This is probably true, as the company has continued to update the driver model and D3D stack to reduce the amount of “stuff” between high-performance graphical applications and the underlying hardware, increase the range of operations that can be performed in multiple threads, improve the programmability of GPUs (especially for computation tasks), and enable new hardware features such as the accelerated raytracing in Nvidia’s latest hardware. However, it’s also been clear that none of these changes are absolutely essential to having most parts of D3D12 on Windows 7. After all, the Vulkan API, successor to OpenGL, is available on Windows 7, using Windows 7 video drivers, and it offers many of the same multithreading benefits as D3D12.
While Microsoft names no names, it also says that it’s working with other game developers to help them port their D3D12 games to Windows 7. It’s not clear yet if D3D12 on Windows 7 will be something fully documented and enabled for any application or a special option for a select few partners working with Microsoft. There’s also no mention of bringing this support to Windows 8.1, though most home users of that operating system have probably upgraded to Windows 10 anyway.
The timing for this move is extraordinary. Enabling D3D12 on Windows 7 back when Windows 10 was first launched would have made D3D12 a much more appealing target to developers, especially in those early days when nobody used Windows 10 (because it was brand new) and everyone was using Windows 7 and 8. Releasing it now, on the other hand, means that gamers are going to have one less reason to upgrade to Windows 10 at the very time when Microsoft should be doing everything it can to coax users to upgrade so that they continue to receive security updates.