我有一个来自gl.readPixels()调用的像素数组。我可以将这些像素放回绘图缓冲区或帧缓冲区吗?即我想调用类似gl.drawPixels的东西,但WebGL API中没有。我是使用纹理并将其渲染为平面,还是我错过了什么?
答案 0 :(得分:0)
黄金书告诉你的是正确的。最快的方式 上传纹理是写入绑定到FBO的纹理。但是你呢 我们需要做的是将像素生成为几何体(优化尽可能多 可能)然后使用Orth矩阵将它们绘制到FBO, GL_POINTS和glDrawArrays。
最佳解决方案(WebGL是GL-ES的一个分支)有点奇怪,但在浏览器中有一些意义,因为你不希望人们直接弄乱内存。让应用程序和驱动程序对其进行排序,但代价是GL代码中的一些类似伏都教的结构。