From fe3f13cc5a8b70dfb27f8b26c059272e251da390 Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Fri, 21 Sep 2018 11:36:17 +0200 Subject: [PATCH] radv: use the resolve compute path if dest uses multiple layers MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The hardware path doesn't support resolving layers, for both source and destination images. This fixes a reflection issue when MSAA is enabled which affects GTA V and probably DIRT3. CC: Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107786 Signed-off-by: Samuel Pitoiset Tested-by: Gregor Münch Reviewed-by: Bas Nieuwenhuizen --- src/amd/vulkan/radv_meta_resolve.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/amd/vulkan/radv_meta_resolve.c b/src/amd/vulkan/radv_meta_resolve.c index 309c7a5..7ce36b1 100644 --- a/src/amd/vulkan/radv_meta_resolve.c +++ b/src/amd/vulkan/radv_meta_resolve.c @@ -346,7 +346,8 @@ static void radv_pick_resolve_method_images(struct radv_image *src_image, *method = RESOLVE_COMPUTE; else if (vk_format_is_int(src_image->vk_format)) *method = RESOLVE_COMPUTE; - else if (src_image->info.array_size > 1) + else if (src_image->info.array_size > 1 || + dest_image->info.array_size > 1) *method = RESOLVE_COMPUTE; if (radv_layout_dcc_compressed(dest_image, dest_image_layout, queue_mask)) { -- 2.7.4