Closed 9MW closed 2 years ago
GLSLang may not support all HLSL constructs, also not all HLSL constructs may map well to SPIRV. You can try to compile this with DXC and see what happens. It is possible that atomics may not be allowed in this scenario.
emulate RWTexture2D with RWStructuredBuffer solved problem
FYI, I have just updated glslang and other third-party modules. You can try to get the latest version and see if the shader compiles, just for the sake of experiment.
FYI, I have just updated glslang and other third-party modules. You can try to get the latest version and see if the shader compiles, just for the sake of experiment.
ye. And can I batch computershader indirect like indirectDraw now?
There is DispatchComputeIndirect
command, it has been there all the time.
well. I expect dispatch array of computershader. it's seems it unsupported by both vulkan & dx12
Like MultiDispatchComputeIndirect
? This is not currently supported.
compute shader code that cause collapse blow const int3 xel=(s_objtrans[InstanceID].pos); InterlockedOr( GroupIdMap[xel.xy].x,orv);
call stack: ucrtbased.dll!00007ffc403912b5() Unknown ucrtbased.dll!00007ffc403910d3() Unknown ucrtbased.dll!00007ffc40393a1f() Unknown
Diligent version : 2.5
use RWTexture2D
<int>
GroupIdMap; replaceRWTexture2D
<int4>
GroupIdMap; works fine