Russian Qt Forum

Qt => 2D и 3D графика => Тема начата: spirits25 от Январь 16, 2011, 21:35



Название: неполная отрисовка, помогите..
Отправлено: spirits25 от Январь 16, 2011, 21:35
рисую трёхмерный параллелепипед (хоть он и по определению 3Д), но передняя грань у него не отображается. Причём не отображается только с одной стороны.

Код:
void piped(GLfloat a, GLfloat b, GLfloat c)
{
  glShadeModel(GL_FLAT);
  glPolygonMode(GL_FRONT_AND_BACK,GL_FILL);

  glBegin(GL_QUAD_STRIP);
    glVertex3f(-a/2,-b/2,-c/2);
    glVertex3f(-a/2,-b/2, c/2);
    glVertex3f(-a/2, b/2,-c/2);
    glVertex3f(-a/2, b/2, c/2);

    glVertex3f( a/2, b/2,-c/2);
    glVertex3f( a/2, b/2, c/2);

    glVertex3f( a/2,-b/2,-c/2);
    glVertex3f( a/2,-b/2, c/2);

    glVertex3f(-a/2,-b/2,-c/2);
    glVertex3f(-a/2,-b/2, c/2);
  glEnd();

  glBegin(GL_QUADS);
    glVertex3f(-a/2,-b/2, c/2);
    glVertex3f(-a/2, b/2, c/2);
    glVertex3f( a/2, b/2, c/2);
    glVertex3f( a/2,-b/2, c/2);

    glVertex3f(-a/2,-b/2,-c/2);
    glVertex3f(-a/2, b/2,-c/2);
    glVertex3f( a/2, b/2,-c/2);
    glVertex3f( a/2,-b/2,-c/2);
  glEnd();
}

Затем заметил, что прямоугольник тоже отображается только с одной стороны.
Код:
        glBegin(GL_QUADS);
        glLineWidth((GLfloat) 3);
        glVertex3f(-0.3, 1.2, 4.0);//fSize);
        glVertex3f(0.3, 1.2, 4.0);
        glVertex3f(0.3, -1.2, 4.0);//-fSize);
        glVertex3f(-0.3, -1.2, 4.0);
        glEnd();

думаю, что решение элементарно, но я его не знаю =( заранее спасибо за подсказку=)


Название: Re: неполная отрисовка, помогите..
Отправлено: alexman от Январь 16, 2011, 22:03
Попробуй
Код:
glPolygonMode( GL_FRONT_AND_BACK, GL_FILL );


Название: Re: неполная отрисовка, помогите..
Отправлено: spirits25 от Январь 16, 2011, 22:11
первый код, 4 строка - есть такая строка уже=)
спасибо за совет, ещё есть предположения?


Название: Re: неполная отрисовка, помогите..
Отправлено: Fat-Zer от Январь 16, 2011, 22:13
glEnable(GL_DEPTH_TEST);

не забыли прописать?

ЗЫ: видимо код в соседней ветке уже не нужен...


Название: Re: неполная отрисовка, помогите..
Отправлено: spirits25 от Январь 16, 2011, 22:42
забыл, но прописал и не помогло. может не туда прописал? куда именно нужно?


Название: Re: неполная отрисовка, помогите..
Отправлено: Fat-Zer от Январь 17, 2011, 14:52
пример с тех времён, когда я сам пытался чего-то на oGL навоять:
// код больше, чем на 90% не мой...