glGenFramebuffers使程序无法运行

时间:2013-04-28 09:46:37

标签: opengl framebuffer fbo

我已经在windows xp virtualbox上重新安装了devcpp 4.9.9.2并安装了glut和glew。

我原来的程序只是使用过剩,并显示一些球体在房间里蹦蹦跳跳。我的问题是,一旦我添加了行

glGenFramebuffers(1, &myBuffer);

我的程序无法运行。它编译得很好。但是当我运行它时说“Ass1.exe遇到了问题,需要关闭。我们很抱歉给您带来不便。”。

如果我注释掉这一行,那么它的效果很好,球会弹跳。 glGenFramebuffers是我的设置方法的底部。

这是我的代码的链接。 https://dl.dropboxusercontent.com/u/13330596/Exercise1.cpp


这是我现在调用glewInit();

之前的代码
// Initialize GLUT.
glutInit(&argc, argv);

// Set display mode with an RGB colour buffer, double buffering and a depth buffer..
glutInitDisplayMode( GLUT_RGB | GLUT_DOUBLE | GLUT_DEPTH ); 

// Set OpenGL window size
glutInitWindowSize(1000, 1000);

// Set position of OpenGL window upper-left corner
glutInitWindowPosition(100, 100); 

// Create OpenGL window with title
glutCreateWindow("Dissertation");


glewInit();

1 个答案:

答案 0 :(得分:2)

您必须先致电glewInit();,然后才能使用扩展功能。可能你没有这样的函数指针仍然是空指针。创建并绑定上下文后,必须调用glewInit。在使用GLUT的情况下,这是在glutCreateWindow(…);

之后