#error: OpArrayLength requires rich descriptor format

4 messages · Page 1 of 1 (latest)

prisma marlin
#

I am trying to query the size of a SSBO at runtime inside a shader. However, when I compile using glslang, I get this error:
error: OpArrayLength requires rich descriptor format
this is the offending code:

layout(set = 3, binding = 0) buffer idOutputBlock { uint entityIDsToRender[]; } idOutputBufferArray[];
// ...
const uint maxLength = idOutputBufferArray[cubo.idOutputBufferBindlessHandle].entityIDsToRender.length();

how do I enable rich descriptor format?

vast plinth
#

so just to be clear, it is erroring on shader compiling and not shader reflection right?

prisma marlin
#

yes, on shader compilation

#

the error seems to be inside of spirv-cross