c++ - 启用深度测试时出现GL错误1280

标签 c++ opengl error-handling

我正在编写的opengl应用程序遇到一些问题。

GLenum err = 0;
glEnable( GL_DEPTH_TEST );
err = glGetError();
if ( err != GL_NO_ERROR )
    printf( "Error: %s\n",glewGetErrorString( err ) );

上面的代码将未知错误输出到控制台,当我逐步执行该操作时,我得到了1280代码。我已经在khronos页面上检查了glEnable,并且其中有枚举,那为什么会引起问题呢?
我查找了错误代码,该错误代码用于无效的枚举,但是怎么回事呢?

最佳答案

您确定错误来自glEnable(GL_DEPTH_TEST);调用吗?

您可以尝试以下方法:

PrintErrors();               // Test for previous error
glEnable(GL_DEPTH_TEST);
PrintErrors();

...

void PrintError() {
    GLenum err;
    for(;;) {
        err = glGetError();
        if (err == GL_NO_ERROR) break;
        printf("Error: %s\n", glewGetErrorString(err));
    }
}

关于c++ - 启用深度测试时出现GL错误1280,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34527803/

相关文章:

Java - JNA 和共享库,在 Linux 上从 .jar 启动时出现 UnsatisfiedLinkError

qt - OpenCV + OpenGL + Qt

string - 返回结果,带无引号的字符串

actionscript-3 - 错误#1009闪存,无法解决

perl - log4perl : logcluck keeps being displayed

c++ - 如何防止宏重新定义

c++ - sizeof 运算符出错

c++ - 使用 VS15 社区进行调试,历史记录

c# - 我可以同时以一种以上的语言使用 OpenGL 吗?

c++ - 绘制和加载 GL_DEPTH_COMPONENT 纹理