KhronosGroup / KhronosGroup/SPIRV-Cross
[mvk-error] SPIR-V to MSL conversion error: Argument buffer resource base type could not be determined.
- Dominant language
- GLSL
- Stars
- 2.5k
- Forks
- 713
- Avg merge
- 2d 18h
- Merged PRs (30d)
- 16
Description
_[I was told to repost this](https://github.com/KhronosGroup/MoltenVK/issues/2016#issuecomment-1716428535)_
After I updated to the latest version of MVK I git the following error:
[mvk-error] SPIR-V to MSL conversion error: Argument buffer resource base type could not be determined. When padding argument buffer elements, all descriptor set resources must be supplied with a base type by the app.
[mvk-error] VK_ERROR_INVALID_SHADER_NV: Fragment shader function could not be compiled into pipeline. See previous logged error.`
The shader is written in hlsl, here are the relevent inputs:
[[vk::push_constant]]
struct rx_pushConstants {
uint instanceRefIndicies[6];
} rx_pushConstants;
[[vk::binding(0, 0)]] ByteAddressBuffer rx_staticResBlocks;
[[vk::binding(1, 0)]] ByteAddressBuffer rx_dynamicResBlocks;
[[vk::binding(2, 0)]] Texture2D rx_textures[];
[[vk::binding(3, 0)]] SamplerState rx_samplers[];
I use dxc to compile hlsl to spirv and MVK_CONFIG_USE_METAL_ARGUMENT_BUFFERS = 1
SpirvCross may does not like the ByteAddressBuffer? Is there a way around this problem without breaking my code?
Thanks for your help!
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.