Функция glLightModeliv
Функция glLightModeliv задает параметры модели освещения.
Синтаксис
void WINAPI glLightModeliv(
GLenum pname,
const GLint *params
);
Параметры
-
pname
-
Параметр модели освещения. Принимаются следующие значения.
Значение Значение - GL_LIGHT_MODEL_AMBIENT
Параметр params содержит четыре целочисленных значения, определяющие интенсивность RGBA во всей сцене. Целочисленные значения сопоставляются линейно таким образом, что наиболее положительное представляемое значение сопоставляется с 1,0, а наиболее отрицательное из них — с -1,0. Значения с плавающей запятой сопоставляются напрямую. Ни целочисленные, ни значения с плавающей запятой не зажимаются. Интенсивность внешней сцены по умолчанию — (0,2, 0,2, 0,2, 1,0). - GL_LIGHT_MODEL_LOCAL_VIEWER
Параметр params — это одно целочисленное значение, указывающее, как вычисляются углы отражения. Если параметр равен 0 (или 0,0), то углы отражения принимают направление представления параллельно оси -z и в ней независимо от расположения вершины в координатах глаза. В противном случае зеркальные отражения вычисляются из источника системы координат глаз. Значение по умолчанию равно 0. - GL_LIGHT_MODEL_TWO_SIDE
Параметр params — это одно целочисленное значение, указывающее, выполняются ли одностороннее или двустороннее вычисления освещения для многоугольников. Он не влияет на вычисления освещения точек, линий или растровых изображений. Если параметр равен 0 (или 0,0), указывается односторонняя подсветка, и в уравнении освещения используются только параметры переднего материала. В противном случае указывается двустороннее освещение.
В этом случае вершины многоугольников, обращенных к спине, освещаются с помощью параметров заднего материала, и их нормы возвращаются обратно перед вычислением уравнения освещения. Вершины фронтовых многоугольников всегда освещаются с помощью параметров переднего материала без изменения их норм. Значение по умолчанию равно 0. -
params
-
Указатель на значение или значения, для которых будут заданы параметры .
Возвращаемое значение
Эта функция не возвращает значение.
Коды ошибок
Следующие коды ошибок могут быть получены функцией glGetError .
Имя | Значение |
---|---|
|
pname не является допустимым значением. |
|
Функция была вызвана между вызовом glBegin и соответствующим вызовом glEnd. |
Комментарии
Функция glLightModeliv задает параметр модели освещения. Параметр pname присваивает имя параметру, а параметр присваивает новое значение.значение или значения отдельных параметров источника света.
В режиме RGBA освещенный цвет вершины — это сумма интенсивности выбросов материала, произведение внешнего отражения материала и интенсивность освещения полной сцены, а также вклад каждого включенного источника света. Каждый источник света включает в себя сумму трех терминов: внешний, диффузный и зеркальный.
- Вклад источника окружающего света является произведением внешнего отражения материала и внешней интенсивности света.
- Вклад источника диффузного света — это произведение диффузного отражения материала, диффузной интенсивности света и точечное произведение нормальной вершины с нормализованным вектором от вершины к источнику света.
- Источник зеркального света представляет собой произведение отражений материала, интенсивность света и точечное произведение нормализованных векторов вершин к глазу и вершин к свету, возведенных в силу блеска материала.
Все три вклада источника света в равной степени затухают на основе расстояния от вершины до источника света и направления источника света, экспоненты распространения и угла спреда. Все точечные продукты заменяются нулем, если они оцениваются как отрицательное значение.
Альфа-компонент результирующего светлого цвета устанавливается в значение альфа-значения диффузного отражения материала.
В режиме цветного индекса значение освещенного индекса вершины находится в диапазоне от окружающих до зеркальных значений, передаваемых в glMaterial с помощью GL_COLOR_INDEXES. Диффузные и зеркальные коэффициенты, вычисленные с помощью (.30, 0,59, .11) взвешения цветов света, блеска материала, а также те же уравнения отражения и затухания, что и в случае RGBA, определяют, насколько выше окружающей среды результирующий индекс.
Следующие функции извлекают сведения, связанные с функцией glLightModeliv :
glGet с аргументом GL_LIGHT_MODEL_LOCAL_VIEWER
glGet с аргументом GL_LIGHT_MODEL_TWO_SIDE
glIsEnabled с аргументом GL_LIGHTING
Требования
Требование | Значение |
---|---|
Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
Заголовок |
|
Библиотека |
|
DLL |
|