【发布时间】:2012-10-04 13:25:46
【问题描述】:
我像 in
http://http.developer.nvidia.com/GPUGems/gpugems_ch21.html
那样实现发光
现在我想为发光部分实现后像效果,所以它们会形成轨迹,就像文章的 21.5.4 后像效果部分中所述。
我的方法是在水平和垂直绽放后将发光纹理传递到另一个帧缓冲区(trail holder),并根据当前trail 使用修改过的 alpha 颜色渲染发光纹理四边形以实现淡出效果count(我们已经渲染到 trail holder 的次数),然后将 trail holder 纹理与当前帧最终图像混合。所以我们在之前的精灵位置得到了一系列发光的部分。
如果 trail count == max trail size,则清除 trail holder。
问题是如何避免清洁痕迹保持器缓冲区,即使我通过了所有痕迹计数检查并且
//glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
//glClearColor(...);
它不会保存有关先前渲染的信息。
附:即使没有任何缓冲区和绽放,如果只是移动并绘制到默认缓冲区纹理四边形并且不清除任何它将在黑屏上移动的东西,我认为它必须自己跟踪图像,因为我们不清除任何东西。 为什么以及如何解决它? OpenGL ES 2.0 和桌面 OpenGL 的问题似乎很笼统。
【问题讨论】:
标签: opengl opengl-es-2.0