Vulkan: Handle BUG_PRIMITIVE_RESTART

This commit is contained in:
Stenzek 2017-02-18 14:13:32 +10:00
parent 4094268009
commit 50fa135594
1 changed files with 5 additions and 0 deletions

View File

@ -276,6 +276,11 @@ void VulkanContext::PopulateBackendInfoFeatures(VideoConfig* config, VkPhysicalD
// Depth clamping implies shaderClipDistance and depthClamp // Depth clamping implies shaderClipDistance and depthClamp
config->backend_info.bSupportsDepthClamp = config->backend_info.bSupportsDepthClamp =
(features.depthClamp == VK_TRUE && features.shaderClipDistance == VK_TRUE); (features.depthClamp == VK_TRUE && features.shaderClipDistance == VK_TRUE);
// Our usage of primitive restart appears to be broken on AMD's binary drivers.
// Seems to be fine on GCN Gen 1-2, unconfirmed on GCN Gen 3, causes driver resets on GCN Gen 4.
if (DriverDetails::HasBug(DriverDetails::BUG_PRIMITIVE_RESTART))
config->backend_info.bSupportsPrimitiveRestart = false;
} }
void VulkanContext::PopulateBackendInfoMultisampleModes( void VulkanContext::PopulateBackendInfoMultisampleModes(