私の質問は ComputeShader、特に HLSL コードに関するものです。したがって、DeviceContext.Dispath(X, Y, Z)
X * Y * Z グループを生成し、それぞれが属性で設定された x * y * z 個の個別のスレッドを持ちます[numthreads(x,y,z)]
。問題は、ディスパッチされた ThreadGroup の総数とグループ内のスレッドの数を取得するにはどうすればよいかということです。なぜそれが必要なのかを説明しましょう。処理しようとしているデータの量は大きく異なる可能性があるため、メソッドは入力配列のサイズに適応する必要があります。もちろん、定数バッファーで Dispath 引数を送信して HLSL コードから使用できるようにすることもできますが、グループ内のスレッド数はどうでしょうか? GetThreadGroupNumber()
やのようなメソッドを探していますGetThreadNumberInGroup()
。助けていただければ幸いです。
2587 次