From 3f47fdab4d3a407cc69fd8cdb94ee9b6952861a1 Mon Sep 17 00:00:00 2001 From: Philip Rebohle Date: Tue, 18 Sep 2018 13:23:28 +0200 Subject: [PATCH] [d3d11] Advertize support for the ForcedSampleCount rasterizer state --- src/d3d11/d3d11_device.cpp | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/d3d11/d3d11_device.cpp b/src/d3d11/d3d11_device.cpp index af8c501c9..d8d46555d 100644 --- a/src/d3d11/d3d11_device.cpp +++ b/src/d3d11/d3d11_device.cpp @@ -1145,11 +1145,11 @@ namespace dxvk { // TODO implement, most of these are required for FL 11.1 // https://msdn.microsoft.com/en-us/library/windows/desktop/hh404457(v=vs.85).aspx - const DxvkDeviceFeatures& features = m_dxvkDevice->features(); - + const auto& features = m_dxvkDevice->features(); + auto info = static_cast(pFeatureSupportData); info->OutputMergerLogicOp = features.core.features.logicOp; - info->UAVOnlyRenderingForcedSampleCount = FALSE; + info->UAVOnlyRenderingForcedSampleCount = features.core.features.variableMultisampleRate; info->DiscardAPIsSeenByDriver = TRUE; info->FlagsForUpdateAndCopySeenByDriver = TRUE; info->ClearView = TRUE; @@ -1158,7 +1158,7 @@ namespace dxvk { info->ConstantBufferOffsetting = TRUE; info->MapNoOverwriteOnDynamicConstantBuffer = TRUE; info->MapNoOverwriteOnDynamicBufferSRV = TRUE; - info->MultisampleRTVWithForcedSampleCountOne = FALSE; + info->MultisampleRTVWithForcedSampleCountOne = TRUE; /* not really */ info->SAD4ShaderInstructions = FALSE; info->ExtendedDoublesShaderInstructions = TRUE; info->ExtendedResourceSharing = FALSE; @@ -1356,6 +1356,7 @@ namespace dxvk { enabled.core.features.logicOp = supported.core.features.logicOp; enabled.core.features.shaderImageGatherExtended = VK_TRUE; enabled.core.features.textureCompressionBC = VK_TRUE; + enabled.core.features.variableMultisampleRate = supported.core.features.variableMultisampleRate; } if (featureLevel >= D3D_FEATURE_LEVEL_10_1) { @@ -1376,6 +1377,7 @@ namespace dxvk { if (featureLevel >= D3D_FEATURE_LEVEL_11_1) { enabled.core.features.logicOp = VK_TRUE; + enabled.core.features.variableMultisampleRate = VK_TRUE; enabled.core.features.vertexPipelineStoresAndAtomics = VK_TRUE; }