1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2025-02-20 19:54:19 +01:00

[d3d11] Require multiDrawIndirect feature for Feature Level 11.0

All hardware that DXVK can run on supports this, so let's just enable it.
Saves some feature checks in games using Ubisoft's Anvil Next engine.
This commit is contained in:
Philip Rebohle 2020-05-11 01:13:42 +02:00
parent e7455b6460
commit aa0b306d2e
No known key found for this signature in database
GPG Key ID: C8CC613427A31C99
2 changed files with 3 additions and 5 deletions

View File

@ -1536,8 +1536,7 @@ namespace dxvk {
auto cmdData = static_cast<D3D11CmdDrawIndirectData*>(m_cmdData);
bool useMultiDraw = cmdData && cmdData->type == D3D11CmdType::DrawIndirectIndexed
&& cmdData->offset + cmdData->count * stride == AlignedByteOffsetForArgs
&& m_device->features().core.features.multiDrawIndirect;
&& cmdData->offset + cmdData->count * stride == AlignedByteOffsetForArgs;
if (useMultiDraw) {
cmdData->count += 1;
@ -1567,8 +1566,7 @@ namespace dxvk {
auto cmdData = static_cast<D3D11CmdDrawIndirectData*>(m_cmdData);
bool useMultiDraw = cmdData && cmdData->type == D3D11CmdType::DrawIndirect
&& cmdData->offset + cmdData->count * stride == AlignedByteOffsetForArgs
&& m_device->features().core.features.multiDrawIndirect;
&& cmdData->offset + cmdData->count * stride == AlignedByteOffsetForArgs;
if (useMultiDraw) {
cmdData->count += 1;

View File

@ -1961,7 +1961,7 @@ namespace dxvk {
if (featureLevel >= D3D_FEATURE_LEVEL_11_0) {
enabled.core.features.drawIndirectFirstInstance = VK_TRUE;
enabled.core.features.fragmentStoresAndAtomics = VK_TRUE;
enabled.core.features.multiDrawIndirect = supported.core.features.multiDrawIndirect;
enabled.core.features.multiDrawIndirect = VK_TRUE;
enabled.core.features.shaderFloat64 = supported.core.features.shaderFloat64;
enabled.core.features.shaderInt64 = supported.core.features.shaderInt64;
enabled.core.features.shaderStorageImageReadWithoutFormat = supported.core.features.shaderStorageImageReadWithoutFormat;