From 0cd6e6d3a109a86a6ab7d3a210e29e97c461ff2a Mon Sep 17 00:00:00 2001 From: Samuel Pitoiset Date: Fri, 27 Nov 2020 15:29:34 +0100 Subject: [PATCH] radv: fix exporting multiviews with NGG If a subpass uses multiview but the fragment shader doesn't load it we still have to export it. Cc: mesa-stable Signed-off-by: Samuel Pitoiset Reviewed-by: Rhys Perry Part-of: (cherry picked from commit fadcf13c8bad5bc07e7fffaca7197adda66b4bd7) --- .pick_status.json | 2 +- src/amd/vulkan/radv_shader_args.c | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 42eb74e9d7e..1e7d5b73615 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -157,7 +157,7 @@ "description": "radv: fix exporting multiviews with NGG", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": null }, diff --git a/src/amd/vulkan/radv_shader_args.c b/src/amd/vulkan/radv_shader_args.c index c6070dfe8ef..ef6e170899a 100644 --- a/src/amd/vulkan/radv_shader_args.c +++ b/src/amd/vulkan/radv_shader_args.c @@ -89,11 +89,16 @@ static bool needs_view_index_sgpr(struct radv_shader_args *args, if (args->shader_info->needs_multiview_view_index || (!args->options->key.vs_common_out.as_es && args->options->key.has_multiview_view_index)) return true; break; - case MESA_SHADER_GEOMETRY: case MESA_SHADER_TESS_CTRL: if (args->shader_info->needs_multiview_view_index) return true; break; + case MESA_SHADER_GEOMETRY: + if (args->shader_info->needs_multiview_view_index || + (args->options->key.vs_common_out.as_ngg && + args->options->key.has_multiview_view_index)) + return true; + break; default: break; }