我试图在不同颜色的情况下并排绘制2个正方形,我的问题是我无法让glTranslatef将我的第二个正方形向右移动,第二个正方形只是在第一个正方形上方.
void display(void)
{
glClear(GL_COLOR_BUFFER_BIT);
glMatrixMode(GL_MODELVIEW);
glLoadIdentity();
glPointSize(10);
glBegin(GL_QUADS);
glColor3f(0.0,1.0,0.0);
drawSquare();
glTranslatef(10,0,0);
glColor3f(1.0,0.0,0.0);
drawSquare();
glEnd();
glFlush(); // Process all OpenGL routines
}
void drawSquare()
{
glVertex3f(0,0,0);
glVertex3f(10,0,0);
glVertex3f(10,10,0);
glVertex3f(0,10,0);
}
Run Code Online (Sandbox Code Playgroud)
小智 7
glBegin和glEnd之间只允许某个OpenGL命令子集.因此,当您在这两个调用之间调用glTranslate时,它将被忽略.
从显示中删除glBegin和glEnd,并放入drawSquare - 这应该有效.
归档时间: |
|
查看次数: |
1884 次 |
最近记录: |