summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorameerj <52414509+ameerj@users.noreply.github.com>2021-07-13 19:58:24 +0200
committerameerj <52414509+ameerj@users.noreply.github.com>2021-07-13 22:04:27 +0200
commite0978931e87c127eae061322cdb489042ed6cfde (patch)
tree8841bd3247b107841c01a1e11573b0de372d21bd
parentMerge pull request #6574 from lioncash/i18n (diff)
downloadyuzu-e0978931e87c127eae061322cdb489042ed6cfde.tar
yuzu-e0978931e87c127eae061322cdb489042ed6cfde.tar.gz
yuzu-e0978931e87c127eae061322cdb489042ed6cfde.tar.bz2
yuzu-e0978931e87c127eae061322cdb489042ed6cfde.tar.lz
yuzu-e0978931e87c127eae061322cdb489042ed6cfde.tar.xz
yuzu-e0978931e87c127eae061322cdb489042ed6cfde.tar.zst
yuzu-e0978931e87c127eae061322cdb489042ed6cfde.zip
-rw-r--r--src/video_core/renderer_vulkan/vk_rasterizer.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/video_core/renderer_vulkan/vk_rasterizer.cpp b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
index e378a5679..a8ffbe6ba 100644
--- a/src/video_core/renderer_vulkan/vk_rasterizer.cpp
+++ b/src/video_core/renderer_vulkan/vk_rasterizer.cpp
@@ -357,11 +357,13 @@ void RasterizerVulkan::Clear() {
.height = std::min(clear_rect.rect.extent.height, render_area.height),
};
- if (use_color) {
+ const u32 color_attachment = regs.clear_buffers.RT;
+ const auto attachment_aspect_mask = framebuffer->ImageRanges()[color_attachment].aspectMask;
+ const bool is_color_rt = (attachment_aspect_mask & VK_IMAGE_ASPECT_COLOR_BIT) != 0;
+ if (use_color && is_color_rt) {
VkClearValue clear_value;
std::memcpy(clear_value.color.float32, regs.clear_color, sizeof(regs.clear_color));
- const u32 color_attachment = regs.clear_buffers.RT;
scheduler.Record([color_attachment, clear_value, clear_rect](vk::CommandBuffer cmdbuf) {
const VkClearAttachment attachment{
.aspectMask = VK_IMAGE_ASPECT_COLOR_BIT,