DirectX 12 in Wine
Gabríel Arthúr Pétursson
gabriel at system.is
Wed Jan 25 10:50:44 CST 2017
On Wed, 2017-01-25 at 17:12 +0100, Józef Kucia wrote:
> The first step for implementing D3D12 in Wine is adding a support for
> Vulkan. This is required in order to properly implement DXGI
> swapchains which are linked to a given HWND. Generally, I recommend
> focus on Vulkan support first. Vulkan support in Wine will be
> immediately beneficial to Vulkan applications, and it is the starting
> point for further D3D12 work.
Wine Staging has experimental patches for Vulkan support. Are those
patches in a state that can be considered for inclusion into Wine? If
not, what further work is needed?
There are a number of concerns I have looking at those patches:
The API translation is done in the Vulkan loader. This is pr
oblematic because applications may ship their own loader, or
statically link one. Applications that do that would not work under
There does not appear to be support for instance layers. The Steam
overlay uses layers for Vulkan games. Vulkan debuggers also rely on
them, e.g. RenderDoc.
How about implementing the API translation as a Vulkan ICD and ship the
official Khronos Vulkan loader as-is?
More information about the wine-devel