From 9e7f41cec63c8f053a210e0df066ad21f08357af Mon Sep 17 00:00:00 2001 From: yzct12345 <87620833+yzct12345@users.noreply.github.com> Date: Sun, 18 Jul 2021 21:56:06 +0000 Subject: [PATCH 1/3] Ignore wrong blit format --- src/video_core/renderer_vulkan/vk_texture_cache.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/video_core/renderer_vulkan/vk_texture_cache.cpp b/src/video_core/renderer_vulkan/vk_texture_cache.cpp index a2ab4d1ee4..61b7a62a7b 100644 --- a/src/video_core/renderer_vulkan/vk_texture_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_texture_cache.cpp @@ -608,7 +608,10 @@ void TextureCacheRuntime::BlitImage(Framebuffer* dst_framebuffer, ImageView& dst const VkImageAspectFlags aspect_mask = ImageAspectMask(src.format); const bool is_dst_msaa = dst.Samples() != VK_SAMPLE_COUNT_1_BIT; const bool is_src_msaa = src.Samples() != VK_SAMPLE_COUNT_1_BIT; - ASSERT(aspect_mask == ImageAspectMask(dst.format)); + if (aspect_mask != ImageAspectMask(dst.format) { + UNIMPLEMENTED_MSG("Incompatible blit from format {} to {}", src.format, dst.format)); + return; + } if (aspect_mask == VK_IMAGE_ASPECT_COLOR_BIT && !is_src_msaa && !is_dst_msaa) { blit_image_helper.BlitColor(dst_framebuffer, src, dst_region, src_region, filter, operation); From b727b6784f8a8ee913c93442b570a531c779f5d3 Mon Sep 17 00:00:00 2001 From: yzct12345 <87620833+yzct12345@users.noreply.github.com> Date: Sun, 18 Jul 2021 22:23:12 +0000 Subject: [PATCH 2/3] Update src/video_core/renderer_vulkan/vk_texture_cache.cpp Co-authored-by: Vitor K --- src/video_core/renderer_vulkan/vk_texture_cache.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/video_core/renderer_vulkan/vk_texture_cache.cpp b/src/video_core/renderer_vulkan/vk_texture_cache.cpp index 61b7a62a7b..433b3f67e5 100644 --- a/src/video_core/renderer_vulkan/vk_texture_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_texture_cache.cpp @@ -608,7 +608,7 @@ void TextureCacheRuntime::BlitImage(Framebuffer* dst_framebuffer, ImageView& dst const VkImageAspectFlags aspect_mask = ImageAspectMask(src.format); const bool is_dst_msaa = dst.Samples() != VK_SAMPLE_COUNT_1_BIT; const bool is_src_msaa = src.Samples() != VK_SAMPLE_COUNT_1_BIT; - if (aspect_mask != ImageAspectMask(dst.format) { + if (aspect_mask != ImageAspectMask(dst.format)) { UNIMPLEMENTED_MSG("Incompatible blit from format {} to {}", src.format, dst.format)); return; } From 03a7131563209ba845437ffe4f8c041d65ad6ed4 Mon Sep 17 00:00:00 2001 From: yzct12345 <87620833+yzct12345@users.noreply.github.com> Date: Sun, 18 Jul 2021 22:23:32 +0000 Subject: [PATCH 3/3] Update src/video_core/renderer_vulkan/vk_texture_cache.cpp Co-authored-by: Vitor K --- src/video_core/renderer_vulkan/vk_texture_cache.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/video_core/renderer_vulkan/vk_texture_cache.cpp b/src/video_core/renderer_vulkan/vk_texture_cache.cpp index 433b3f67e5..1bcb7d5c22 100644 --- a/src/video_core/renderer_vulkan/vk_texture_cache.cpp +++ b/src/video_core/renderer_vulkan/vk_texture_cache.cpp @@ -609,7 +609,7 @@ void TextureCacheRuntime::BlitImage(Framebuffer* dst_framebuffer, ImageView& dst const bool is_dst_msaa = dst.Samples() != VK_SAMPLE_COUNT_1_BIT; const bool is_src_msaa = src.Samples() != VK_SAMPLE_COUNT_1_BIT; if (aspect_mask != ImageAspectMask(dst.format)) { - UNIMPLEMENTED_MSG("Incompatible blit from format {} to {}", src.format, dst.format)); + UNIMPLEMENTED_MSG("Incompatible blit from format {} to {}", src.format, dst.format); return; } if (aspect_mask == VK_IMAGE_ASPECT_COLOR_BIT && !is_src_msaa && !is_dst_msaa) {