OpenGL以什么顺序绘制边缘?

时间:2014-07-09 15:05:43

标签: opengl

下面的代码是在三维空间上绘制金字塔的代码,我的问题是OpenGL如何绘制金字塔的边缘?以什么顺序?

我知道在二维空间中,我们从左下顶点开始绘制,并且正好逆时针方向绘制。

我的金字塔代码:

glPushMatrix();
  glTranslatef(0,-1,1);
  glColor3f (1.0, 1.5,0.0);
  glBegin(GL_LINE_LOOP);
    glVertex3f(-1,-1,-1);
    glVertex3f(-1,-1,1);
    glVertex3f(1,-1,1); 
    glVertex3f(1,-1,-1);
    glVertex3f(-1,-1,-1);
    glVertex3f(0,0,0.5);
    glVertex3f(-1,-1,1);
    glVertex3f(1,-1,1); 
    glVertex3f(0,0,0.5);
    glVertex3f(1,-1,-1);
  glEnd();
glPopMatrix();

1 个答案:

答案 0 :(得分:1)

GL_LINE_LOOP绘图模式下,OpenGL从0顶点到1,然后从122绘制一条线3等等......最后,它使用从最后一个顶点到loop的一条线关闭0th。这就是为什么它被称为line loop

编辑:

你对二维空间中的方向说了什么 - 如果你画线或一个线圈,它真的没什么关系。方向against the clock主要用于绘制三角形,以区分前脸和后脸。使用它可以轻松地剪切许多不可见的三角形。