Fixed using pixel shader constants in pixel shaders instead of vertex shader constants, for relative addressing.
diff --git a/src/Shader/PixelRoutine.cpp b/src/Shader/PixelRoutine.cpp index 1dd429e..2528a9c 100644 --- a/src/Shader/PixelRoutine.cpp +++ b/src/Shader/PixelRoutine.cpp
@@ -5801,7 +5801,7 @@ } else if(var.rel.type == Shader::PARAMETER_CONST) { - RValue<Float4> c = *Pointer<Float4>(r.data + OFFSET(DrawData,vs.c[var.rel.index])); + RValue<Float4> c = *Pointer<Float4>(r.data + OFFSET(DrawData,ps.c[var.rel.index])); return RoundInt(Extract(c, 0)) * var.rel.scale; }