我是Metal的新手。在哪种情况下,我们在Shaders中使用内核语句。使用普通顶点着色器和片段着色器而不是普通着色器有什么好处
kernel void shadowShader
答案 0 :(得分:2)
为输出图像中的每个像素调用一次片段着色器。内核着色器被调用的次数很多,因此,例如,一个内核着色器可以在多个像素上工作,或者根本不能在多个像素上工作。它只是更加灵活,对于某些问题可能性能更高(因为计算线程可以使用线程组内存一起工作)。
答案 1 :(得分:1)
计算或内核着色器是通用计算管道。它通常用于图像处理任务。用Google搜索时通常会出现这种情况。但是内核程序可以用来处理您提供的数据。计算管道与渲染管道是分开的。您可以看到它是GPU并行执行计算的方式。计算管道可以使用您提供的MTLBuffer
或纹理写回到设备内存。您可以在渲染管道中使用该输出。