我在这里找到了一篇关于您的问题的文章。在 C++ 中开始使用 OpenGL也可能会有所帮助。不过,以防万一,这是另一个要测试的示例:
void init() {
glClearColor(0.0, 0.0, 0.0, 1.0);
glClearDepth(1.0);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
}
void display() {
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
gluLookAt(0.0, 0.0, 10.0, 0.0, 0.0, 0.0, 0.0, 1.0, 0.0);
glPushMatrix();
glColor3f(1.0, 1.0, 1.0);
glutSolidTeapot(2.5);
glPopMatrix();
glutSwapBuffers();
}
void reshape(int width, int height) {
glViewport(0, 0, GLsizei(width), GLsizei(height));
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(50.0, GLdouble(width)/GLdouble(height), 1.0, 100.0);
glMatrixMode(GL_MODELVIEW);
}
int main(int argc, char **argv) {
glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
glutInitWindowPosition(200, 200);
glutInitWindowSize(800, 600);
glutCreateWindow("Transformations");
init();
glutReshapeFunc(reshape);
glutDisplayFunc(display);
glutMainLoop();
return 0;
}
如果您还没有这样做,请尝试复制/粘贴示例代码,或检查是否有任何丢失的 dll(并检查它们是否在正确的目录中)。示例代码肯定没有错;它在 Visual Studio 中完美运行。