Какова цель указания четкого цвета в OpenGL ES?

Я работаю над рамкой LibGDX, которая предоставляет оболочку для создания вызовов opengl. Я регулярно сталкиваюсь со следующими парами функций:

Gdx.gl.glClearColor(0.0f, 0.0f, 0.0f, 1.0f); 
Gdx.gl.glClear(GL10.GL_COLOR_BUFFER_BIT);

документация (из OpenGL) объясняет, что glClearColor позволяет:

Укажите значения красного, зеленого, синего и альфа, используемые при очистке цветовых буферов.

Какова цель выбора конкретного прозрачного цвета здесь, когда он сразу же перезаписывается тем, что получает визуализированный? Следует ли выбрать цвет, соответствующий вашей сцене? Используется ли для установки фона для сцены?

1 ответ

Если вы действительно перезаписываете каждый пиксель в каждом создаваемом вами фрейме, вам не нужно вообще очищать буфер цвета (но обычно вам нужно очистить буфер глубины).

Однако есть много вариантов использования, когда требуется очищенный буфер, и возможность выбора цвета фона является полезной функцией.

licensed under cc by-sa 3.0 with attribution.