我刚开始尝试 OpenGL,但遇到了一个奇怪的问题。
如果我使用g++ test.c -lGL -lGLU -lglut
then编译和执行./a.out
,则会打开一个单独的窗口(代码中指定的大小)。但是它没有在其中包含代码的输出,而是在其中包含屏幕的屏幕截图(它重叠的屏幕部分)。
这绝对与代码无关,因为它在我朋友的计算机上运行良好。但我需要在我的电脑上修复它。
我在 Linux Mint 15 64 位(HP DV6 6121tx)上。
所以我无法进一步进行。这是我的代码:
#include <GL/gl.h>
#include <GL/glut.h>
#define drawOneLine(x1,y1,x2,y2) glBegin(GL_LINES); glVertex2f ((x1),(y1)); glVertex2f ((x2),(y2)); glEnd();
void init()
{
glClearColor(1.0,1.0,1.0,0.0);
glMatrixMode(GL_PROJECTION);
gluOrtho2D (-600,600,-400,400);
glClear(GL_COLOR_BUFFER_BIT);
}
int main(int argc, char** argv)
{
glutInit(&argc,argv);
glutInitDisplayMode(GLUT_SINGLE | GLUT_RGB);
glutInitWindowPosition(0,0);
glutInitWindowSize(1200,800);
glutCreateWindow("ABCD");
init();
glutMainLoop();
return 0;
}