我已经在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();
答案 0 :(得分:2)
您必须先致电glewInit();
,然后才能使用扩展功能。可能你没有这样的函数指针仍然是空指针。创建并绑定上下文后,必须调用glewInit
。在使用GLUT的情况下,这是在glutCreateWindow(…);