1

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

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();
}

是什么阻止了气缸显示?

4

3 回答 3

2

你可以在glBegin()block内做的事情是有限的。该列表包括另一个glBegin().

此外,尝试使用非默认视锥。我会推荐gluPerspective()

于 2012-05-25T23:26:49.593 回答
1

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

于 2012-05-26T04:46:33.273 回答
0

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

于 2012-05-25T20:33:06.790 回答