Closed emoon closed 6 years ago
2 issues here.
It doesn't properly support groupshared data. It has made the data a varying when it should actually be a uniform array that is indexed by a varying.
g_buffer1[0].ptr0 = g_buffer0[index].ptr0;
is also an issue as 0u is a uniform literal when it actually needs to be a varying. I'll have to think how to work around that as the varying dependancy chain could be a bit complex.
Give the following code
Compiling this (using DXC) with
dxc -E csEntry -T cs_6_0 -spirv file.hlsl -Fo shader.spv
and then usingSPIRV-Cross.exe --ispc shader.spv --output output.ispc
Results in the following file (slightly cut down to make it smaller)This results in the following error