diff options
author | Samuel Pitoiset <[email protected]> | 2018-09-21 11:36:17 +0200 |
---|---|---|
committer | Samuel Pitoiset <[email protected]> | 2018-09-21 16:35:59 +0200 |
commit | fe3f13cc5a8b70dfb27f8b26c059272e251da390 (patch) | |
tree | 195095c723fc99f3dc1d7eaca9c41bf84fa6d096 /src | |
parent | ab80889e92e2a3c2884e5da925424f9f6a88979b (diff) |
radv: use the resolve compute path if dest uses multiple layers
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: <[email protected]>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=107786
Signed-off-by: Samuel Pitoiset <[email protected]>
Tested-by: Gregor Münch <gr.muench_at_gmail.com>
Reviewed-by: Bas Nieuwenhuizen <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/amd/vulkan/radv_meta_resolve.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/amd/vulkan/radv_meta_resolve.c b/src/amd/vulkan/radv_meta_resolve.c index 309c7a5be0d..7ce36b1df6e 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)) { |