气缸未显示在屏幕上

时间:2012-05-25 20:25:25

标签: qt opengl drawing paint glu

嗯,我想要做的是使用GLUquadricObj和gluCylinder绘制一个Cylinder,无论在OpenGL小部件上没有显示Cylinder,代码都会很好地编译。

void GLWindow::paintGL()
{
    glClear(GL_COLOR_BUFFER_BIT);
    glColor3f(1,0,0);
    glBegin(GL_POLYGON);
    GLUquadricObj *obj = gluNewQuadric();

    gluCylinder(obj, 1.0, 1, 3, 30, 30);

    glEnd();
}

什么阻止显示气缸?

3 个答案:

答案 0 :(得分:2)

有限number of things you can do inside a glBegin() block。该列表包括another glBegin()

另外,尝试非默认视图截锥体。我推荐gluPerspective()

答案 1 :(得分:1)

我已修复它,是resizeGL()的一个问题。做glMatrixMode(GL_MODELVIEW); + glMatrixMode(GL_PROJECTION);是造成这种情况的。

答案 2 :(得分:0)

你确定你在initializeGL()函数中正确初始化了opengl和场景吗?