GL_QUADS绘制一个凹五边形而不是重复

时间:2017-04-02 16:16:30

标签: c++ opengl graphics glut

我正在使用此代码生成矩形

glBegin(GL_QUADS);
glColor3f(0,0,0);
glVertex2f(-0.9,-0.9);
glVertex2f(-0.9,+0.9);
glVertex2f(+0.9,-0.9);
glVertex2f(+0.9,+0.9);
glEnd();

Draws this

我的窗口设置了以下代码:

glutInit(&argc, argv);
glutInitDisplayMode(GLUT_RGB | GLUT_DOUBLE);
glutInitWindowSize(600,600);
glutInitWindowPosition(0,0);
glutCreateWindow("Atari Breakout!");
glClearColor(0,1,0,1);
glOrtho(-1.0f, +1.0f, -1.0f,+1.0f,1,1);
glutDisplayFunc(display);
glutIdleFunc(display);

glutMainLoop();

1 个答案:

答案 0 :(得分:4)

你的顶点的顺序就像字母N,它翻转了原始中间的缠绕。您必须以一致的缠绕顺序提交顶点。