summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends/Vulkan/Renderer.cpp
diff options
context:
space:
mode:
authorAnthony <Helios747@users.noreply.github.com>2017-08-14 13:12:41 -0700
committerGitHub <noreply@github.com>2017-08-14 13:12:41 -0700
commit6a272f22de4fc17d221632883b5f22fd718c4880 (patch)
tree033a48cfb59c41e94e44069701eea787164ddf83 /Source/Core/VideoBackends/Vulkan/Renderer.cpp
parenta7bdd2ee1c69da37bce9114968d701c8cadb0f13 (diff)
parent7f887111868f2463ea8cdc8c4b28f96b19bf4bcd (diff)
Merge pull request #5478 from stenzek/vulkan-nvidia
Vulkan: Don't use vkCmdClearAttachments on NVIDIA with MSAA
Diffstat (limited to 'Source/Core/VideoBackends/Vulkan/Renderer.cpp')
-rw-r--r--Source/Core/VideoBackends/Vulkan/Renderer.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/Source/Core/VideoBackends/Vulkan/Renderer.cpp b/Source/Core/VideoBackends/Vulkan/Renderer.cpp
index 3037e3e5f4..5f79897842 100644
--- a/Source/Core/VideoBackends/Vulkan/Renderer.cpp
+++ b/Source/Core/VideoBackends/Vulkan/Renderer.cpp
@@ -33,6 +33,7 @@
#include "VideoCommon/AVIDump.h"
#include "VideoCommon/BPFunctions.h"
#include "VideoCommon/BPMemory.h"
+#include "VideoCommon/DriverDetails.h"
#include "VideoCommon/OnScreenDisplay.h"
#include "VideoCommon/PixelEngine.h"
#include "VideoCommon/PixelShaderManager.h"
@@ -391,6 +392,8 @@ void Renderer::ClearScreen(const EFBRectangle& rc, bool color_enable, bool alpha
// Fast path: Use vkCmdClearAttachments to clear the buffers within a render path
// We can't use this when preserving alpha but clearing color.
+ if (g_ActiveConfig.iMultisamples == 1 ||
+ !DriverDetails::HasBug(DriverDetails::BUG_BROKEN_MSAA_VKCMDCLEARATTACHMENTS))
{
VkClearAttachment clear_attachments[2];
uint32_t num_clear_attachments = 0;