我正在编写一个程序来学习如何在一般情况下使用opengl和glut,并且我有过度的问题,我并不完全明白它有什么问题。glutExitgamemode回调错误
我可以创建一个过剩的窗口并进入全屏模式,但是每当我打电话给过多的游戏模式时,它都能正常工作,但是当我退出过剩游戏时,程序崩溃而不是返回到一个小窗口。
我收到以下错误:
2011-12-10 01:09:43.709 ogl [979:903] GLUT警告:以下是对GLUT 3.0的新检查;更新你的代码。
2011-12-10 01:09:43.710 ogl [979:903] GLUT致命错误:重新显示窗口2所需的内容,但没有显示回调。
在打电话过度退出游戏模式以使程序正常工作之前,我应该怎么做?
这是代码片段:
switch (key) { case 27: exit(0); break; case 97: glutGameModeString("640x480:[email protected]"); glutEnterGameMode();
break; case 99: glutLeaveGameMode(); case 98: glutFullScreen(); break; }
这是我的代码在主:
int main(int argc, char** argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);
glutInitWindowPosition(50, 100);
glutInitWindowSize(640,480);
glutCreateWindow("GameMode");
windows = glutGetWindow();
glutReshapeFunc(Reshape);
glutDisplayFunc(display);
glutKeyboardFunc(keyhandle);
glutMainLoop(); }
我贴了我的主代码。问题是当我退出程序崩溃的游戏模式时。如果我没有使用glutDisplayFunc,我将无法进入游戏模式并获得全屏显示,对吗? – mma1480
我明白了。在glutLeaveGameMode()后我没有添加显示功能;我现在得到它的工作,谢谢 – mma1480