在 HLSL 计算着色器中是否有等同于 gl_LocalInvocationIndex 的东西?
Is there an equivalent to gl_LocalInvocationIndex in a HLSL compute shader?
还是需要自己计算?我在 HLSL 计算着色器中找不到内置全局变量的参考。
这应该是 SV_GroupIndex,正如 msdn 中描述的那样:
The "flattened" index of a compute shader thread within a thread group, which turns the multi-dimensional SV_GroupThreadID into a 1D value. SV_GroupIndex varies from 0 to (numthreadsX * numthreadsY * numThreadsZ) – 1.
SV_GroupIndex = SV_GroupThreadID.z*dimx*dimy +
SV_GroupThreadID.y*dimx +
SV_GroupThreadID.x
还是需要自己计算?我在 HLSL 计算着色器中找不到内置全局变量的参考。
这应该是 SV_GroupIndex,正如 msdn 中描述的那样:
The "flattened" index of a compute shader thread within a thread group, which turns the multi-dimensional SV_GroupThreadID into a 1D value. SV_GroupIndex varies from 0 to (numthreadsX * numthreadsY * numThreadsZ) – 1.
SV_GroupIndex = SV_GroupThreadID.z*dimx*dimy +
SV_GroupThreadID.y*dimx +
SV_GroupThreadID.x