SV_GroupIndex
O índice "mesclado" de um thread de sombreador de computação dentro de um grupo de threads, que transforma o SV_GroupThreadID multidimensional em um valor 1D. SV_GroupIndex varia de 0 para (numthreadsX * numthreadsY * numThreadsZ) – 1.
Tipo
Tipo |
---|
uint |
Comentários
SV_GroupIndex = SV_GroupThreadID.z*dimx*dimy +
SV_GroupThreadID.y*dimx +
SV_GroupThreadID.x
em que dimx e dimy são as dimensões especificadas no atributo numthreads para o ponto de entrada.
Esse valor do sistema é opcional. No entanto, seu uso garante que um thread grave apenas em sua região de memória atribuída na variável groupshared.
A ilustração a seguir mostra a relação entre os parâmetros passados para ID3D11DeviceContext::D ispatch, Dispatch(5,3,2), os valores especificados no atributo numthreads, numthreads(10,8,3) e valores que serão passados para o sombreador de computação para os valores do sistema relacionados ao thread (SV_GroupIndex,SV_DispatchThreadID,SV_GroupThreadID,SV_GroupID).
Essa função tem suporte nos seguintes tipos de sombreadores:
Vértice | Casco | Domínio | Geometry | Pixel | Computação |
---|---|---|---|---|---|
x |
Confira também