This affects The Crew for me, not sure what else it affects.
I also started to have this issue in Anno 2070 and Crysis 3.
Anno 2070 seems to fallback to DX9 or 10 and does not uses DXVK.
Crysis 3 says that DX11 GPU is needed and closes.
info: Enabled instance extensions:
info: VK_KHR_win32_surface
info: VK_KHR_surface
info: GeForce GTX 660:
info: Driver: 396.24.0
info: Vulkan: 1.1.70
info: Memory Heap[0]:
info: Size: 2048 MiB
info: Flags: 0x1
info: Memory Type[7]: Property Flags = 0x1
info: Memory Type[8]: Property Flags = 0x1
info: Memory Heap[1]:
info: Size: 8967 MiB
info: Flags: 0x0
info: Memory Type[0]: Property Flags = 0x0
info: Memory Type[1]: Property Flags = 0x0
info: Memory Type[2]: Property Flags = 0x0
info: Memory Type[3]: Property Flags = 0x0
info: Memory Type[4]: Property Flags = 0x0
info: Memory Type[5]: Property Flags = 0x0
info: Memory Type[6]: Property Flags = 0x0
info: Memory Type[9]: Property Flags = 0x6
info: Memory Type[10]: Property Flags = 0xe
info: D3D11CoreCreateDevice: Probing D3D_FEATURE_LEVEL_11_0
info: D3D11CoreCreateDevice: Using feature level D3D_FEATURE_LEVEL_11_0
err: Required Vulkan extension VK_EXT_vertex_attribute_divisor not supported
warn: Vulkan extension VK_EXT_shader_viewport_index_layer not supported
err: DxvkAdapter: Failed to create device
err: D3D11CoreCreateDevice: Failed to create DXGI device
I'm using GTX 660 with 396.24.00 driver, latest DXVK build from git, wine 3.10.
Your driver doesn't seem to support the extension, which I actually wasn't aware of since even some of the older driver versions support it.
396.24.0 is a bit broken with DXVK anyway, please use 396.24.02.
not going to reopen this, just want to give some help in case someone has similar problems:
using arch you currently have to revert f8650c1c9f6ad39fb32bfa552248c7136f7be4df
as nvidia drivers are at nvidia-396.24-7 and no game starts with that driver.
appling a little revert patch in dxvk PKGBUILD looks easier for me instead messing around with a global nvidia drivers update. alternatively sticking with the last working dxvk-git build (mine is dxvk-git-20180611.dce2f84-1-x86_64.pkg.tar.xz) works as well of course.
FYI, I'm maintaining a legacy branch where I'll push bug fixes for the time being. You can use that for now.
There's also nothing wrong with using 0.54, not much has happened since then.
thank you for your help, doitsujin! You're right of course pointing to the current release, but sometimes projects are so exciting that I prefer to run them bleeding edge to feel the great development.
did so for many years with other projects - I like it and have no better explainable reason :)
thank you for your great work!
Well for those of us who don't want to screw around with beta drivers I guess I'm now maintaining dxvk-legacy-git https://aur.archlinux.org/packages/dxvk-legacy-git/
@doitsujin Not sure if anyone's spotted this before as I doubt many people are using the legacy branch, but it doesn't build for me (normal does fine).
[33/42] Compiling C++ object 'src/dxvk/src@dxvk@@dxvk@sta/meson-generated_dxvk-unity.cpp.obj'.
FAILED: src/dxvk/src@dxvk@@dxvk@sta/meson-generated_dxvk-unity.cpp.obj
/usr/bin/i686-w64-mingw32-g++ -Isrc/dxvk/src@dxvk@@dxvk@sta -Isrc/dxvk -I../../dxvk/src/dxvk -I../../dxvk/./include -fdiagnostics-color=always -pipe -Wall -Winvalid-pch -Wnon-virtual-dtor -std=c++1z -O3 -pthread -MD -MQ 'src/dxvk/src@dxvk@@dxvk@sta/meson-generated_dxvk-unity.cpp.obj' -MF 'src/dxvk/src@dxvk@@dxvk@sta/meson-generated_dxvk-unity.cpp.obj.d' -o 'src/dxvk/src@dxvk@@dxvk@sta/meson-generated_dxvk-unity.cpp.obj' -c 'src/dxvk/src@dxvk@@dxvk@sta/dxvk-unity.cpp'
In file included from src/dxvk/src@dxvk@@dxvk@sta/dxvk-unity.cpp:7:
/mnt/store/Build/Custom/dxvk-ex-git/src/dxvk-20180623.90af54b/build.32/../../dxvk/src/dxvk/dxvk_context.cpp: In member function ‘void dxvk::DxvkContext::resolveImage(const dxvk::Rc<dxvk::DxvkImage>&, const VkImageSubresourceLayers&, const dxvk::Rc<dxvk::DxvkImage>&, const VkImageSubresourceLayers&, VkFormat)’:
/mnt/store/Build/Custom/dxvk-ex-git/src/dxvk-20180623.90af54b/build.32/../../dxvk/src/dxvk/dxvk_context.cpp:1268:64: error: no matching function for call to ‘dxvk::DxvkCommandList::cmdBindDescriptorSet(VkPipelineBindPoint, VkPipelineLayout&, VkDescriptorSet&, int, std::nullptr_t)’
pipeInfo.pipeLayout, descriptorWrite.dstSet, 0, nullptr);
^
In file included from /mnt/store/Build/Custom/dxvk-ex-git/src/dxvk-20180623.90af54b/build.32/../../dxvk/src/dxvk/dxvk_barrier.h:4,
from /mnt/store/Build/Custom/dxvk-ex-git/src/dxvk-20180623.90af54b/build.32/../../dxvk/src/dxvk/dxvk_context.h:3,
from /mnt/store/Build/Custom/dxvk-ex-git/src/dxvk-20180623.90af54b/build.32/../../dxvk/src/dxvk/dxvk_device.h:7,
from /mnt/store/Build/Custom/dxvk-ex-git/src/dxvk-20180623.90af54b/build.32/../../dxvk/src/dxvk/dxvk_adapter.cpp:4,
from src/dxvk/src@dxvk@@dxvk@sta/dxvk-unity.cpp:1:
/mnt/store/Build/Custom/dxvk-ex-git/src/dxvk-20180623.90af54b/build.32/../../dxvk/src/dxvk/dxvk_cmdlist.h:233:10: note: candidate: ‘void dxvk::DxvkCommandList::cmdBindDescriptorSet(VkPipelineBindPoint, VkPipelineLayout, VkDescriptorSet)’
void cmdBindDescriptorSet(
^~~~~~~~~~~~~~~~~~~~
/mnt/store/Build/Custom/dxvk-ex-git/src/dxvk-20180623.90af54b/build.32/../../dxvk/src/dxvk/dxvk_cmdlist.h:233:10: note: candidate expects 3 arguments, 5 provided
[36/42] Compiling C++ object 'src/d3d11/src@d3d11@@d3d11@sha/meson-generated_d3d11-unity.cpp.obj'.
ninja: build stopped: subcommand failed.
Known issue or something new?
Good catch, fixed.
For those with more experience, how does one find the exact version of the drivers? the nv control panel only displays XXX.XX, missing the important sub version.
Nvidia-settings shows full version string.
Also, you can use this
cat /sys/module/nvidia/version
I guess Arch must still be shipping 396.24.00 then as that's what both give ('396.24'). Thanks.
Error also occurs with driver 390.67.0, Vulkan 1.0.65
err: Required Vulkan extension VK_EXT_vertex_attribute_divisor not supported
err: DxvkAdapter: Failed to create device
err: Required Vulkan extension VK_EXT_vertex_attribute_divisor not supported
err: DxvkAdapter: Failed to create device
Of course an even older driver doesn't support that feature either.
390.67 is actually newer than 396.24 (2018.6.5 vs 2018.5.2). In fact the most recent version of the driver on Nvidia's website is 390.77 (2018.7.16) which at first glance seems like it should be older than 396.24 which is now the oldest of the three. But that also doesn't work with DXVK as it's missing the required extension.
The newest DXVK compatible driver from Nvidia is now the 396.24.10 one from the experimental Vulkan branch (dated 2018.7.12).
390.67 is actually newer than 396.24
This is correct. Versions 396.xx are from the short-life branch. Versions 390.xx are from the long-life branch. Nvidia states, "Full Vulkan 1.1 support" in both branches.
Version 396.24.10 is nothing but a testing, BETA version.
Release date alone doesn't really matter, there's a reason why one has a higher version number than another. The 390 series has not and probably will not receive the required feature updates.
Same error for 396.45.
Not if you're using latest master, it's no longer a hard requirement. But yeah, that driver still doesn't support the extension.
That's the reason why I finally decided to relax the requirement again - this doesn't mean that DXVK doesn't need this extension, it absolutely does, but while there were good reasons to lock out 396.24, those should be resolved in 396.45.
Ah okay thank you, i will try and compile the latest master.
And thanks a lot for your hard work.
Most helpful comment
Well for those of us who don't want to screw around with beta drivers I guess I'm now maintaining dxvk-legacy-git https://aur.archlinux.org/packages/dxvk-legacy-git/