OpenGL中的自参考渲染缓冲区
我有一些OpenGL代码在不同的应用程序中表现不一致 硬件。我有一些代码:OpenGL中的自参考渲染缓冲区,opengl,rendering,textures,Opengl,Rendering,Textures,我有一些OpenGL代码在不同的应用程序中表现不一致 硬件。我有一些代码: 创建渲染缓冲区并将纹理绑定到其颜色缓冲区(纹理a) 将此渲染缓冲区设置为活动,并调整视口等 激活像素着色器(在本例中为高斯模糊) 将四边形绘制为全屏,并在其上添加纹理 解除渲染缓冲等的绑定 在我的开发机器上,这工作得很好,并且达到了预期的效果 但是,在其他硬件上“就地”模糊纹理的效果 这似乎不起作用 我把它归结为两种可能性 A) 将renderbuffer渲染到自身不应该工作,并且 由于某种侥幸,只能在我的开发机器上工作
因此,您应该创建几个缓冲区。在模糊/光晕的情况下,两个通常就足够了-先渲染到第二个,然后在写入第二个时读取并模糊。如果需要,可以用乒乓球的方式重复这个过程。在某些特殊情况下,即使是背部缓冲也足够了。你只是没有做一个glClear,你以前画的仍然存在。当然,需要注意的是,你不能真正地从后台阅读。但是对于像淡入淡出这样的效果,这是可行的。谢谢,我在自己的研究中倾向于这样,尽管我无法得到具体的答案。@brandorf:我添加了一个指向帧缓冲区对象规范的链接,其中说结果未定义。