Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Мультимедия, OpenGL/DirectX > Проблемы с GL_DEPTH_TEST


Автор: alvi92 16.3.2010, 18:53
С неделю назад начал изучать OpenGL, дошел до Z-буффера и тут возникли проблемы. Ниже приведен код:

Код

void Window::initializeGL()
{
    glClearColor(1.0, 1.0, 1.0, 1.0);
    glEnable(GL_DEPTH_TEST);
}

void Window::resizeGL(int w, int h)
{
    glViewport(0, 0, w, h);
    glMatrixMode(GL_PROJECTION);
    glLoadIdentity();
    glFrustum(-0.5, 0.5, -0.5, 0.5, 1.0, 15.0);
    glMatrixMode(GL_MODELVIEW);
}

void Window::paintGL()
{
    glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);

    glLoadIdentity();
    glTranslated(0.0, 0.0, -5.0);

    glBegin(GL_QUADS);
    {
        glColor3d(1.0, 0.0, 0.0);
        glVertex3d(-0.5, -0.5, -1.0);
        glVertex3d(0.5, -0.5, -1.0);
        glVertex3d(0.5, 0.5, -1.0);
        glVertex3d(-0.5, 0.5, -1.0);

        glColor3d(1.0, 1.0, 1.0);
        glVertex3d(-0.5, -0.5, 0.0);
        glVertex3d(0.5, -0.5, 0.0);
        glVertex3d(0.5, 0.5, 0.0);
        glVertex3d(-0.5, 0.5, 0.0);
    }
}


После запуска - просто черный экран... В чем может быть проблема?

Автор: Elfet 16.3.2010, 19:28
А нужно задать источник света либо 
Код

glEnable(GL_COLOR_MATERIAL);

glColorMaterial(GL_FRONT_AND_BACK, GL_AMBIENT_AND_DIFFUSE);

Автор: alvi92 16.3.2010, 19:39
Спасибо большое.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)