directcompute hlsl numthreads?

时间:2012-06-09 23:38:06

标签: hlsl directx-10 directcompute

由于您已经定义了在分离计算着色器时要执行的线程组,因此着色器文件中的数字表示什么?示例:[numthreads(1,1,1)]

1 个答案:

答案 0 :(得分:0)

通过官方定义进行更多挖掘,在调度时定义线程组,而numthreads语句定义线程,所以基本上它们可以作为额外的维度。例如,当我将2,2,1发送到具有3,1,1的函数时,它会产生

enter code here
0, 0, 0 - 0, 0, 0
0, 0, 0 - 1, 0, 0
0, 0, 0 - 2, 0, 0

1, 0, 0 - 0, 0, 0
1, 0, 0 - 1, 0, 0
1, 0, 0 - 2, 0, 0

0, 1, 0 - 0, 0, 0
0, 1, 0 - 1, 0, 0
0, 1, 0 - 2, 0, 0

1, 1, 0 - 0, 0, 0
1, 1, 0 - 1, 0, 0
1, 1, 0 - 2, 0, 0

所以2 * 2 * 1 * 3 * 1 * 1 =总共12个线程