DXVK generally requires a Vulkan 1.1 driver to run at all with the following device features:
geometryShader
robustBufferAccess
shaderStorageImageWriteWithoutFormat
shaderDrawParameters
depthClamp
depthBiasClamp
fillModeNonSolid
pipelineStatisticsQuery
sampleRateShading
shaderClipDistance
shaderCullDistance
textureCompressionBC
occlusionQueryPrecise
independentBlend
multiViewport
fullDrawIndexUint32
shaderImageGatherExtended
transformFeedback
geometryStreams
For feature level 10_1:
dualSrcBlend
imageCubeArray
For feature level 11_0:
drawIndirectFirstInstance
fragmentStoresAndAtomics
multiDrawIndirect
tessellationShader
For feature level 11_1:
logicOp
variableMultisampleRate
vertexPipelineStoresAndAtomics
There's also a whole bunch of semi-optional features that we use to either implemement certain optional D3D features, ensure correctness, or to achieve good performance:
extendedDynamicState
formatA4B4G4R4
formatA4R4G4B4
shaderFloat64
shaderInt64
shaderStorageImageReadWithoutFormat
depthClipEnable
hostQueryReset
samplerAnisotropy
pipelineStatisticsQuery
vertexAttributeInstanceRateDivisor
vertexAttributeInstanceRateZeroDivisor
shaderDemoteToHelperInvocation
robustBufferAccess2
robustImageAccess2
nullDescriptor
memoryPriority
depthBounds
Note that all of this is subject to change and we will likely move on to Vulkan 1.2 in the future and make hostQueryReset a hard requirement, which allows us to get rid of a slow and more or less untested code path. Portability and compatibility with mobile drivers is not a priority for us.
Thanks very much for any improvement.
Installing DXVK is much time in WINE even being few files to copy to WINE path.
FYI upcoming versions will require null descriptors and dynamic rendering.
I'm closing this issue, I think the question has been answered. Feel free to reopen if there's anything else you want to know.
You are saying future version will be compatible with any Vulkan version installed in OS ?
Null descriptors (VK_EXT_robustness2) have been supported for a couple of years. On linux at least.
For VK_KHR_dynamic_rendering you need atleast 510.39.01 for nvidia and mesa 22.0.0 (radv & anv) for amd and intel.
You are saying future version will be compatible with any Vulkan version installed in OS ?
It will be compatible with any Vulkan driver that supports those features and works correctly.
Nothing extracted yet.
Looking at the wiki page I can see these:
"
DXVK aims to provide support for D3D11, feature level 11_1, and D3D10, feature level 10_1.
Currently unsupported features:
D3D11: Shared Resources.
D3D11: Class linkage.
D3D11: Predication.
D3D11.1: Target-independent rasterization (behaves incorrectly; no MSAA16x support).
D3D11.2: Tiled resources (optional).
D3D11.3: Rasterizer Ordered Views (optional).
D3D11.4: D3D12 interop.
"
Is there any indication of the Vulkan API version and extensions requirement to get D3D11.1 support and to get D3D10.1 support?
What the Vulkan drivers need to support? Is it currently a matter of trial and error?
Thanks