From 8ec76b1e445062f271311974623c302e384f57c1 Mon Sep 17 00:00:00 2001 From: baldurk Date: Wed, 12 Jun 2019 15:30:07 +0100 Subject: [PATCH] Assign subsequent regIndex locations for matrix/arrays in GL reflection --- renderdoc/driver/gl/gl_shader_refl.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/renderdoc/driver/gl/gl_shader_refl.cpp b/renderdoc/driver/gl/gl_shader_refl.cpp index 6ca252452..90f50243f 100644 --- a/renderdoc/driver/gl/gl_shader_refl.cpp +++ b/renderdoc/driver/gl/gl_shader_refl.cpp @@ -1061,6 +1061,8 @@ static void AddSigParameter(std::vector &sigs, uint32_t ®Index, if(s.regIndex == ~0U) s.regIndex = regIndex++; + else if(arrayIdx >= 0) + s.regIndex += arrayIdx; if(arrayIdx >= 0) { @@ -1078,6 +1080,10 @@ static void AddSigParameter(std::vector &sigs, uint32_t ®Index, if(s.regIndex == ~0U) s.regIndex = regIndex++; + else if(arrayIdx >= 0) + s.regIndex += rows * arrayIdx + r; + else + s.regIndex += r; if(arrayIdx >= 0) {