Смешивание OpenGL (Java) - PullRequest
1 голос
/ 25 июня 2010

Я пишу некоторый код Java OpenGL (хотя принципы в C ++ openGL те же).У меня есть ситуация, когда я хочу сделать некоторые элементы поверх других.Я могу сделать это, отключив тест глубины или установив для него GL_ALWAYS), и это хорошо работает.Проблема в том, что цвета тех предметов сверху кажутся затемненными предметами под ним.Я не уверен, является ли это проблемой освещения или проблемой смешения, но я пытаюсь показать цвет элемента, не будучи затронутым цветами вокруг него, независимо от z-позиции этого элемента (так как тест глубины установлен ВСЕГДА).Есть ли настройки освещения или смешивания, которые я должен использовать для этого?

спасибо, Джефф

1 Ответ

1 голос
/ 25 июня 2010

Я думаю, что в этой ситуации я бы оставил настройки глубины в покое, но отрегулировал бы значение Z объектов на основе порядка рисования (для тех элементов, которые вы хотите нарисовать, основываясь на порядке вместо обычной глубины).

glBegin(GL_WHATEVER);
    for (int i=0; i<num_objects; i++) 
        glVertex(object[i].x, object[i].y, i/-100.0f);
glEnd(GL_WHATEVER);
...