是否可以在OpenCL中绘制基元?

时间:2016-07-21 12:58:20

标签: opengl opencl

我试图使用并行内核算法,但它需要直接从内核调用OpenGL函数[就像画线],这可能吗? 绘制到纹理对象。这是线索

1 个答案:

答案 0 :(得分:1)

不,不是真的。

首先,在CPU端发出OpenGL绘图命令(例如glDrawArrays)。在OpenCL内核中,您在GPU上运行,无法调用这些方法。

此外,在OpenCL中,您甚至无法访问GPU渲染管道的固定功能部分,如曲面细分单元或光栅化器。

你可以做的当然是在OpenCL中创建一个2D缓冲区,自己实现线条渲染并绘制像素"在那里,但那可能不是你想要的。

还有OpenGL-OpenCL互操作性的扩展,教程在这里:https://software.intel.com/en-us/articles/opencl-and-opengl-interoperability-tutorial

也许如果你告诉我们你想要达到的目标,我们可以为你提供更好的选择:)