OpenGL. Компьютерная графика. Васильев С.А. - 50 стр.

UptoLike

Составители: 

52
Параметр Описание
GL_FOG_END
Конечное расстояние (е) от точки
наблюдения до которого изменяется ин-
тенсивность тумана. param определяет
значение e. По умолчанию установлено
значение (1.0)
GL_FOG_COLO
R
Определяется цвет тумана. В этом
случае params указатель на массив из
4-х компонент цвета (RGBA). По умол-
чанию установлено значение (0.0, 0.0,
0.0, 0.0)
РАССМОТРИМ ПРИМЕР ИСПОЛЬЗОВАНИЯ ТУМАНА:
GLfloat FogColor[4]={0.6,0.6,0.6,1.0}; // Цвет тумана
glEnable(GL_FOG); // Включаем туман
glFogi(GL_FOG_MODE,GL_LINEAR); // Линейное изменение интен-сивности
glFogf(GL_FOG_START,2.0); // Начало тумана
glFogf(GL_FOG_END,50.0); // Окончание тумана
glFogfv(GL_FOG_COLOR,FogColor); // Устанавливаем цвет тумана
13.4 Прозрачность
Реалистическая графика предполагает использование эффекта прозрачности элементов наблюдае-
мой сцены, когда через одни фрагменты сцены можно видеть другие. Для этого цели введено понятие
альфа–канал в характеристике цвета точки (RGBA), который и указывает на степень ее "прозрачности".
При альфа равном 1.0 фрагмент считается полностью непрозрачным, а при 0.0 – полностью прозрач-
ным.
Тест на прозрачность разрешается и запрещается командами glEnable и glDisable с параметром
GL_ALPHA_TEST.
Для управления тестом по альфа-каналу используется команда
void glAlphaFunc(GLenum func, GLclampf ref),
где параметр ref задает сравниваемое значение для альфа-параметра. Это значение находится в диапазо-
не [0,1]. По умолчанию параметр ref равен 0. Параметр func задает функцию сравнения значений альфа
и может принимать следующие символьные константы:
Параметр
Тест завершается положительно в слу-
чае
GL_NEVER НИКОГДА
GL_LESS
Если поступающее значение меньше, чем
ref
GL_EQUAL
Если поступающее значение равно ref
GL_LEQUAL
Если поступающее значение меньше или
равно ref
GL_GREATE
R
Если поступающее значение больше, чем
ref
GL_NOTEQU
AL
Если поступающее значение не равно ref