Exemplo n.º 1
0
 private static void Assign(GaussianShader.KernelType type)
 {
     if (GaussianShader._Kernel[(int)type] == -1)
     {
         GaussianShader._Kernel[(int)type] = GaussianShader.Shader.FindKernel(GaussianShader._KernelName[(int)type]);
         uint num;
         uint num2;
         uint num3;
         GaussianShader.Shader.GetKernelThreadGroupSizes(GaussianShader._Kernel[(int)type], out num, out num2, out num3);
         GaussianShader._ThreadGroupX[(int)type] = (int)num;
         GaussianShader._ThreadGroupY[(int)type] = (int)num2;
         GaussianShader._ThreadGroupZ[(int)type] = (int)num3;
     }
 }
Exemplo n.º 2
0
 public static void Dispatch(GaussianShader.KernelType type, int width, int height)
 {
     GaussianShader.Shader.Dispatch(GaussianShader._Kernel[(int)type], width / GaussianShader._ThreadGroupX[(int)type], height / GaussianShader._ThreadGroupY[(int)type], 1 / GaussianShader._ThreadGroupZ[(int)type]);
 }