doitsujin / dxvk

Vulkan-based implementation of D3D8, 9, 10 and 11 for Linux / Wine
zlib License
12.58k stars 804 forks source link

Compiling DXVK 1.0 #941

Closed adv-sw closed 5 years ago

adv-sw commented 5 years ago

Compiling on Windows, though these issues aren't Windows specific.

Can have Visual Studio proj/solution when it works, if you'd like.

DXVK Issues

  1. The following files are missing

include

include

Referenced in d3d11_swapchain.cpp

Production stop. Can't compile with these files missing.

2.VkPhysicalDeviceDepthClipEnableFeaturesEXT

Not defined in latest vulkan SDK. I've commented out in my build to get it compiling.

Version 1.0 and latest tree.

doitsujin commented 5 years ago
  1. The following files are missing

include

include

They are not missing, they are generated from GLSL shaders at build time.

VkPhysicalDeviceDepthClipEnableFeaturesEXT

This is defined in the Vulkan headers that ship with DXVK.

Do note that I do not and will not support building on Visual Studio.

Joshua-Ashton commented 5 years ago

Visual Studio builds perfectly out of the box anyway.

You don't need to change anything to get it to build -- if its broke its because you broke it.

Make sure you have glslangValidator in your path and run meson --backend vs2017 build --buildtype release to generate the project files

adv-sw commented 5 years ago

Hey guys - wasn't aware you had a build system that could generate vstudio projects so had started putting my own together. Cheers Joshua for that, resolves my build issues.

Compiled on windows using visual studio (thank you).

One issue :

On Windows its hard to get an app to pick up vulkan replacement DLLs as system wants to pick up its own. I modified project files to generate vk_d3d11.dll vk_d3d11.lib etc.

Obv requires app to be built against them but as that's only reason to do this on windows, makes sense. To me, anyhow.

adv-sw commented 5 years ago

Have dxvk with the modification I've suggested above running on my test system, building against standard dxsdk sample code & so far so good :)