此行为的标准原因是什么?我有2个相同的缓冲区,有2个网格纹理,预乘alpha和alpha背景:第一个我有背景上的对象,但是当我在这个alpha背景上移动它时,第二个留下了对象跟踪。我无法理解为什么! FBO是相似的。
谢谢!
答案 0 :(得分:1)
我的错误是我在清除前忘了绑定FBO:
glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glBindFramebuffer(GL_FRAMEBUFFER, FBO);
glBindFramebuffer(GL_FRAMEBUFFER, 0); // WRONG!
glBindFramebuffer(GL_FRAMEBUFFER, FBO);
glClearColor(0.0f, 0.0f, 0.0f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)
glBindFramebuffer(GL_FRAMEBUFFER, 0); // RIGHT!