首页 文章

glGenTextures分段错误?

提问于
浏览
5

所以这就是问题:当我调用glGenTextures时,我会遇到分段错误 .

我在linux上,这是我目前用来调查这个的代码:

#include <iostream>
#include <SDL/SDL.h>
#include <GL/gl.h>
#include <GL/glu.h>

int main(int argc, char *argv[])
{
    GLuint texture;
    glGenTextures( 1, &texture );
    return texture;
}

看起来很简单吧?好吧,我用GDB(GNU调试工具)跟踪了段错误,当我在文件/usr/lib/mesa/libGL.so.1中调用glGenTextures()时就会发生这种情况 .

那是我的视频驱动程序的openGL代码......

有任何想法吗?

2 回答

  • 1

    显示的代码没有做任何设置有效的OpenGL context,因此它不能使用OpenGL .

    如何做到这一点因平台而异 . 如果你不这样做,你可以使用像GLFW这样的东西来进行相当便携,但当然这会增加依赖性 .

  • 10

    正如用户"unwind"所说,您需要初始化您的OpenGL上下文 . 你可以在没有3Dparty库的情况下完成它 - 检查这个NeHe示例:http://nehe.gamedev.net/tutorial/texture_mapping/12038/

    希望这可以帮助 .

相关问题