KhronosGroup / KhronosGroup/SPIRV-Cross
Compiler cannot reflect storage_buffer
- Dominant language
- GLSL
- Stars
- 2.5k
- Forks
- 713
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 16
Description
Compile slang shader contains
`[[vk::binding(1, 0)]] StructedBuffer SphereArray;`
Use `compiler.get_shader_reources()` didn't see any storage_buffers.
Use spirv-cross.exe to reflect, didn't see any ssbos.
But use spirv-dis.exe see
```
OpDecorate %SphereArray Binding 1
OpDecorate %SphereArray DescriptorSet 0
```
which binds correctly.
RWStructedBuffer doesn't work either.
How can or where can i get the reflection rightly in code ?
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with compiler.get_shader_reources() and compare its reflection output with the spirv-dis.exe decorations for SphereArray. Check the spirv-cross.exe reflection path for StructedBuffer and RWStructedBuffer; done means storage buffers are reported with their binding and descriptor set.
Written by the indexing model from the issue text.
Assessment
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 28/100