OpenGL基础:绘制多色方块

时间:2012-03-26 21:09:26

标签: opengl glut

我想要做的是绘制一个正方形,其中每个顶点应该具有不同的颜色。 这应该会在广场内形成一个漂亮的渐变。 这是我正在使用的代码:

glBegin(GL_QUADS);
glColor3f(0.0f, 0.0f, 1.0f);
glVertex2f(((float)(winWidth-redLineWidth))/2.f,((float)(winHeight-redLineWidth))/2.f);
glColor3f(0.0f, 0.0f, 0.0f);
glVertex2f(((float)(winWidth+redLineWidth))/2.f,((float)(winHeight-redLineWidth))/2.f);
glColor3f(0.0f, 1.0f, 0.0f);
glVertex2f(((float)(winWidth+redLineWidth))/2.f,((float)(winHeight+redLineWidth))/2.f);
glColor3f(1.0f, 0.0f, 0.0f);
glVertex2f(((float)(winWidth-redLineWidth))/2.f,((float)(winHeight+redLineWidth))/2.f);
glEnd();

请忽略使用的变量。 我画了一个矩形,但它有一个纯色。 这里的错误在哪里?

我在Mac OS X上使用GLUT。

1 个答案:

答案 0 :(得分:3)

您似乎不太可能更改此内容,但您可能会尝试在绘图代码之前添加glShadeModel(GL_SMOOTH)调用。默认行为应该按照您的预期进行,因此问题可能出在其他地方。