From 1befd5c32ae261df35e68e3b7da82b86f78ac5e3 Mon Sep 17 00:00:00 2001 From: baldurk Date: Mon, 10 Feb 2025 17:51:54 +0000 Subject: [PATCH] Always consider subgroup index non-flat * This is needed to ensure we get the right value for helper lanes --- renderdoc/driver/vulkan/vk_shaderdebug.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/renderdoc/driver/vulkan/vk_shaderdebug.cpp b/renderdoc/driver/vulkan/vk_shaderdebug.cpp index e4a69a5cc..2acd74584 100644 --- a/renderdoc/driver/vulkan/vk_shaderdebug.cpp +++ b/renderdoc/driver/vulkan/vk_shaderdebug.cpp @@ -3705,6 +3705,11 @@ static void CreateInputFetcher(rdcarray &spv, editor.SetName(value.base, StringFormat::Fmt("__rd_base_%zu_%s", i, param.varName.c_str())); // non-float inputs are considered flat value.flat = VarTypeCompType(param.varType) != CompType::Float; + + // mark this as non-flat so we still derive it for helper lanes as it will vary + if(param.systemValue == ShaderBuiltin::IndexInSubgroup) + value.flat = false; + laneValues.push_back(value); if(valueType == boolType)