我在 GeForce 9800 GTX 上使用 OpenGL 3.3。3.3 的参考页面说 glBindFramebuffer 的无效操作指示不是从 glGenFramebuffers 返回的帧缓冲区 ID。然而,我输出了 glGenFramebuffer 返回的 ID 和稍后发送到 glBindFramebuffer 的 ID,它们是相同的。
但是,当我将 glBindFramebuffer 中的目标参数从 GL_DRAW_FRAMEBUFFER 更改为 GL_FRAMEBUFFER 时,GL 错误消失了。文档说我应该能够使用 GL_DRAW_FRAMEBUFFER。是否存在无法绑定到 GL_DRAW_FRAMEBUFFER 的情况?使用 GL_FRAMEBUFFER 而不是 GL_DRAW_FRAMEBUFFER 有什么危害吗?这是更大问题的征兆吗?