From 6f90abb6abcf8f95ea6f661df46e7a1d2858ea4d Mon Sep 17 00:00:00 2001 From: baldurk Date: Tue, 5 May 2020 17:51:45 +0100 Subject: [PATCH] Fix sourcevar declarations for private variables --- renderdoc/driver/shaders/spirv/spirv_debug_setup.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/renderdoc/driver/shaders/spirv/spirv_debug_setup.cpp b/renderdoc/driver/shaders/spirv/spirv_debug_setup.cpp index 928ffcc93..8b90409c6 100644 --- a/renderdoc/driver/shaders/spirv/spirv_debug_setup.cpp +++ b/renderdoc/driver/shaders/spirv/spirv_debug_setup.cpp @@ -921,10 +921,13 @@ ShaderDebugTrace *Debugger::BeginDebug(DebugAPIWrapper *apiWrapper, const Shader { SourceVariableMapping sourceVar; sourceVar.name = sourceName; - sourceVar.rows = 1; - sourceVar.columns = 1; + sourceVar.type = var.type; + sourceVar.rows = RDCMAX(1U, (uint32_t)var.rows); + sourceVar.columns = RDCMAX(1U, (uint32_t)var.columns); sourceVar.offset = 0; - sourceVar.variables.push_back(DebugVariableReference(DebugVariableType::Variable, var.name)); + for(uint32_t x = 0; x < sourceVar.rows * sourceVar.columns; x++) + sourceVar.variables.push_back( + DebugVariableReference(DebugVariableType::Variable, var.name, x)); globalSourceVars.push_back(sourceVar); }