#1 楼
今天,将计算着色器视为“在着色器管道中”并不完全正确,就好像您的顶点着色器和片段着色器确实连接到管道中一样。目前,计算着色器还没有“钩住”任何东西,无法驱动光栅化,或直接消耗光栅化的输出。但是,它允许您做的是消耗和产生内存资源,这些内存资源也被绘图调用以相对有效的方式使用。 OpenCL使这变得相当困难(例如,请参阅https://software.intel.com/zh-cn/articles/opencl-and-opengl-interoperability-tutorial)。这使您可以有效地将计算过程集成到渲染器中,但未集成到渲染管道中。
评论
为什么要使用GPGPU首先绘制数百万个多维数据集?计算着色器用于计算工作负载,而不用于渲染。经验法则是,如果需要栅格化(即将三角几何体处理为像素),则应使用渲染管线;如果仅需要处理大量数据,则应使用计算。我也对支持和反对计算着色器和CUDA / OpenCL(带有图形API互操作)的声音参数感兴趣。我听说过的一种方法是使用特定于计算的API对计算工作负载进行更好的排队,但我想了解更多信息(即,异步计算如何进入画面)。
@Derag只是想尽可能快地喂我的恋物癖
如果要绘制一百万个立方体,请使用ray-marching :)