glCheckFramebufferStatus返回0并且glGetError中没有错误

时间:2014-07-10 10:28:16

标签: c++ linux opengl sdl framebuffer

glCheckFramebufferStatus返回0,之后没有从glGetError返回错误。假设这是一个驱动程序错误是否安全?我似乎无法在OpenGL的文档中找到有关如何处理这种情况的任何内容。

我正在使用nvidia专有驱动程序在Linux(Ubuntu 14.04)上使用SDL2编写游戏。

3 个答案:

答案 0 :(得分:7)

如果有人想知道,当没有绑定帧缓冲区时,我发现我正在运行glCheckFramebufferStatus。

答案 1 :(得分:3)

检查您是否忘记将上下文设置为当前上下文。那是我的理由。

答案 2 :(得分:1)

如果目标不是GL_DRAW_FRAMEBUFFER,GL_READ_FRAMEBUFFER或GL_FRAMEBUFFER,则会生成GL_INVALID_ENUM。因此,您可以检查您的目标是否属于这些类型之一。

评论:我从这里得到了这个OpenGl.org

  

"此外,如果发生错误,则返回零。"

仅在目标不是GL_DRAW_FRAMEBUFFER,GL_READ_FRAMEBUFFER或GL_FRAMEBUFFER的情况下。

  

"生成GL_INVALID_ENUM"

所以我想,会发生错误,但他们确实不会告诉你哪一个。

相关问题