Whi*_*aws 5 c opengl interop gpu opencl
我正在制作一个OpenCL raycaster,我希望用尽可能少的开销(每个滴答计数)将像素点亮到屏幕上,比每次打勾都要调用glClear(),我想创建一个帧缓冲区来绘制并传递它是OpenCL,然后使用glBlitFramebuffer()进行blitting,但我认为自动绘制到屏幕更好,所以有没有办法用openCL绘制像素?Hacky的东西还可以
我现在能做的最好的事情是看看glClear是如何做到的......
Kyl*_*utz 7
通常的方法是使用OpenCL绘制到共享的OpenGL/OpenCL纹理对象(使用该clCreateFromGLTexture()函数创建),然后使用OpenGL通过渲染具有该纹理的全屏四边形将其绘制到屏幕上.
clCreateFromGLTexture()
编辑:我写了一个小例子,它使用OpenCL来计算mandelbrot分形,然后使用OpenGL直接从GPU渲染到屏幕.代码在这里:mandelbrot.cpp.
归档时间:
11 年,7 月 前
查看次数:
247 次
最近记录: