From 38bfefcdfad44a94e5c2fc661917ce432b53f246 Mon Sep 17 00:00:00 2001 From: kd-11 Date: Sat, 27 Nov 2021 19:22:25 +0300 Subject: [PATCH] vk: Fix incorrect mixed transfer modes for mipmapped VTC --- rpcs3/Emu/RSX/VK/VKTexture.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/rpcs3/Emu/RSX/VK/VKTexture.cpp b/rpcs3/Emu/RSX/VK/VKTexture.cpp index c0a047bd66..8083dc3f68 100644 --- a/rpcs3/Emu/RSX/VK/VKTexture.cpp +++ b/rpcs3/Emu/RSX/VK/VKTexture.cpp @@ -971,6 +971,12 @@ namespace vk offset_in_upload_buffer = dma_mapping.first; copy_info.bufferOffset = offset_in_upload_buffer; } + else if (!layout.layer && !layout.level) + { + // Do not allow mixed transfer modes. + // This can happen in special cases, e.g mipN having different processing than mip0 as is the case with the last VTC mip + caps.supports_zero_copy = false; + } if (opt.require_swap || opt.require_deswizzle || requires_depth_processing) {