在openGL中使用顶点和面数组绘制金字塔

时间:2017-10-21 18:27:45

标签: c++ arrays opengl shapes

我一直在浏览图形教程,发现一个立方体用2个2D数组绘制它,一个是8 x 3来存储顶点,另一个是6 x 4来存储面,数字是构成这些面孔的顶点。

数组初始化如此The arrays are initialized like this

然后通过这样做来绘制立方体:

void draw_face(int i)
{
    glBegin(GL_LINE_LOOP);
    glVertex3fv(vertex[face[i][0]]);
    glVertex3fv(vertex[face[i][1]]);
    glVertex3fv(vertex[face[i][2]]);
    glVertex3fv(vertex[face[i][3]]);
    glEnd();
}

//A cube consists of 6 faces
void  cube()
{
    for (int I =0 ; i<6; i++) 
        draw_face(i);
}

我的问题是如何将其用于绘制金字塔?我知道你可以用同样的方式绘制底部,但是4个三角形面让我感到困惑,我想知道如何为三角形初始化这些数组,我只是无法真正掌握如何初始化顶点和面对于一个多维数据集的东西,是否有一种简单的方法可以解决这个问题?

0 个答案:

没有答案