SV_GroupIndex
线程组中计算着色器线程的“平展”索引,将多维SV_GroupThreadID转换为 1D 值。 SV_GroupIndex从 0 到 (numthreadsX * numthreadsY * numThreadsZ) – 1。
类型
类型 |
---|
uint |
备注
SV_GroupIndex = SV_GroupThreadID.z*dimx*dimy +
SV_GroupThreadID.y*dimx +
SV_GroupThreadID.x
其中 dimx 和 dimy 是在入口点的 numthreads 属性中指定的维度。
此系统值是可选的。 但是,它的用法可确保线程仅写入其分配的组共享变量中的内存区域。
下图显示了传递给 ID3D11DeviceContext::D ispatch 的参数之间的关系, 调度 (5,3,2) , numthreads 属性中指定的值,numthreads (10,8,3) ,以及将传递给线程相关系统值的计算着色器的值 (SV_GroupIndex,SV_DispatchThreadID,SV_GroupThreadID,SV_GroupID) 。
以下类型的着色器支持此函数:
顶点 | 外壳 | 域 | Geometry | 像素 | 计算 |
---|---|---|---|---|---|
x |
另请参阅