OpenGl:绘制一个简单的矩形

时间:2015-11-05 21:47:41

标签: c++ opengl draw rectangles

我能够创建三维项目并在屏幕上制作动画,但无论出于何种原因,我都无法弄清楚我在绘制一个该死的矩形作为地板时出错了。

加载并绘制矩形:

void loadRectangle(float x[5], float y[5], float z[5])
{
x[0]=-8.0;  y[0]=-1.00; z[0]=1.0;
x[1]=8.0;   y[1]=-1.00; z[1]=1.0;
x[2]=8.0;   y[2]=1.0;   z[2]=1.0;
x[3]=-8.0;  y[3]=1.0;   z[3]=1.0;
x[4]=1.0;   y[4]=1.0;   z[4]=1.0; //color to be used in this case red
}

void drawRectangle(float x[5], float y[5], float z[5])
{
int i;

    glColor3f(x[4],y[4],z[4]);
    glBegin(GL_POLYGON); //draws the rectangle
    for (i=0; i<=3; i++)
        glVertex3f(x[i],y[i],z[i]);
    glEnd();
}

设置转换矩阵......

void settransRectangle(void)
{
glMatrixMode(GL_MODELVIEW);
    glLoadIdentity();
    glTranslatef(0.0,-3.0,1.0);
    return;

}

在渲染中呼叫所有人......

loadRectangle(rectX, rectY, rectZ);
settransRectangle();
drawRectangle(rectX, rectY, rectZ);

我完成它的方式与我在屏幕上制作动画的三维项目相同,即使我注释掉了我的每一段代码,它根本就不会显示出来除此之外。

0 个答案:

没有答案
相关问题