上周,我尝试了一些我在阅读GLUT教程时发现的例子,一切都很顺利。
现在,当我重试那些相同的例子时,我得到一个奇怪的行为:我的GLUT窗口显示窗口所在位置的桌面部分(所以如果GLUT窗口从(100,100)开始并且大小为500px通过500px,它显示从(100,100)开始到(600,600)结束的桌面部分。
我上周测试的以下示例应显示黑色背景上的线茶壶。我想知道我的代码是否有问题(因为我不记得改变其中的任何内容),或者问题来自于图书馆没有正确链接或者它是否是&#39是我不知道的其他东西。
#include <GL/glut.h>
void displayFunc(void);
int glutWindow;
int main(int argc, char** argv){
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGBA | GLUT_SINGLE);
// define the size
glutInitWindowSize(500,500);
// the position where the window will appear
glutInitWindowPosition(100,100);
glutWindow = glutCreateWindow("UITest");
glClearColor(0.0, 0.0, 0.0, 0.0);
glutDisplayFunc(displayFunc);
glutMainLoop();
return EXIT_SUCCESS;
}
void displayFunc(void){
glClear(GL_COLOR_BUFFER_BIT);
glutWireTeapot(0.5);
}
答案 0 :(得分:2)
您需要在glFlush()
的末尾添加对displayFunc()
的通话。