Over the years id Software has become quite the fan of OpenGL and its successor Vulkan, recently patching DOOM to add Vulkan API support. A competing graphics API to DX12, Vulkan offers developers low level abstraction for greater control over GPU and CPU hardware. Speaking after the DOOM Vulkan update, Axel Gneiting, engine programmer at id, has said that developers using Microsoft’s DirectX 12 over Vulkan makes “literally no sense”.
DX12 support is of course becoming extremely widespread, with big hitters like Rise of the Tomb Raider, Total War: Warhammer and Hitman already supporting it, along with upcoming juggernaut Battlefield 1. Despite its ubiquity though, Gneiting says this doesn’t make it the best choice.
“I'm really getting annoyed by everyone adopting DX12 instead of Vulkan even for PC exclusives. This literally makes no sense,” Gneiting said as he settled into his Twitter rant.
Citing DirectX 12’s exclusivity to Windows 10, Gneiting said “Availability [of Vulkan] is now not an issue anymore, you will need two [DirectX] code paths on PC for Win 7 compat making the Xbox stuff invalid. Xbox needs special path anyway. Xbox DX12 is not Windows DX12. At least not if you want full performance.”
In essence Microsoft’s big selling point of DX12 is that the code base is unified, but Gneiting says this isn’t in fact the case. Xbox One DX12 and PC DX12 run on two separate code bases, whilst a large percentage of PC gamers are still using Windows 7 which doesn’t even have DX12 capability.
“Vulkan on Windows 7 has no higher driver overhead than on Windows 10”, explains Gneiting, inferring that DirectX 12 should also be capable of running on Windows 7.
Both DirectX 12 and Vulkan offer a similar set of benefits, albeit Vulkan is an open standard whereas DX12 is closed. It’s only early doors, with just DOOM to go on, but the performance improvements while using Vulkan look to be considerably more impressive than the jump to DX12.
What do you make of Gneiting’s comments? Do you think more developers should go the Vulkan route? Let us know what you think!