ВУЗ:
Составители:
Рубрика:
Е. Ю. Ечкина, С. Б. Базаров, И. Н. Иновенков «Визуализация в научных исследованиях»
Кафедра АНИ факультета ВМК МГУ имени М. В. Ломоносова http://ani.cs.msu.su
52
GL_EMISSION параметр params должен содержать четыре целых или вещественных
значения цветов RGBA, которые определяют интенсивность излучаемого света
материала.
Значение по умолчанию: (0.0, 0.0, 0.0, 1.0).
GL_AMBIENT_AND_DIFFUSE эквивалентно двум вызовам команды glMaterial..() со
значением pname GL_AMBIENT и GL_DIFFUSE и одинаковыми значениями params.
Из этого следует, что вызов команды glMaterial[i f]() возможен только для установки
степени зеркального отражения материала. В большинстве моделей учитывается
диффузный и зеркальный отраженный свет; первый определяет естественный цвет
объекта, а второй – размер и форму бликов на его поверхности.
Параметр face определяет тип граней, для которых задается этот материал и может
принимать значения GL_FRONT, GL_BACK или GL_FRONT_AND_BACK.
Если в сцене материалы объектов различаются лишь одним параметром,
рекомендуется сначала установить нужный режим, вызвав glEnable() c параметром
GL_COLOR_MATERIAL, а затем использовать команду
void glColorMaterial(GLenum face, GLenum pname)
где параметр face имеет аналогичный смысл, а параметр pname может принимать все
перечисленные значения. После этого, значения выбранного с помощью pname
свойства материала для конкретного объекта (или вершины) устанавливается вызовом
команды glColor..(), что позволяет избежать вызовов более ресурсоемкой команды
glMaterial..() и повышает эффективность программы.
Источники света
Добавить в сцену источник света можно с помощью команд
void glLight[i f](GLenum light, GLenum pname, GLfloat param)
void glLight[i f](GLenum light, GLenum pname, GLfloat *params)
Параметр light однозначно определяет источник,и выбирается из набора специальных
символических имен вида GL_LIGHTi, где i должно лежать в диапазоне от 0 до
GL_MAX_LIGHT, которое не превосходит восьми.
Оставшиеся два параметра имеют аналогичный смысл, что и в команде glMaterial..().
Рассмотрим их назначение (вначале описываются параметры для первой команды,
затем для второй):
GL_SPOT_EXPONENT параметр param должен содержать целое или вещественное
число от 0 до 128, задающее распределение интенсивности света. Этот параметр
описывает уровень сфокусированности источника света.
Значение по умолчанию: 0 (рассеянный свет).
GL_SPOT_CUTOFF параметр param должен содержать целое или вещественное
число между 0 и 90 или равное 180, которое определяет максимальный угол разброса
света. Значение этого параметра есть половина угла в вершине конусовидного
светового потока, создаваемого источником.
Значение по умолчанию: 180 (рассеянный свет).
GL_AMBIENT параметр params должен содержать четыре целых или вещественных
значения цветов RGBA, которые определяют цвет фонового освещения.
Значение по умолчанию: (0.0, 0.0, 0.0, 1.0).
Е. Ю. Ечкина, С. Б. Базаров, И. Н. Иновенков «Визуализация в научных исследованиях» GL_EMISSION параметр params должен содержать четыре целых или вещественных значения цветов RGBA, которые определяют интенсивность излучаемого света материала. Значение по умолчанию: (0.0, 0.0, 0.0, 1.0). GL_AMBIENT_AND_DIFFUSE эквивалентно двум вызовам команды glMaterial..() со значением pname GL_AMBIENT и GL_DIFFUSE и одинаковыми значениями params. Из этого следует, что вызов команды glMaterial[i f]() возможен только для установки степени зеркального отражения материала. В большинстве моделей учитывается диффузный и зеркальный отраженный свет; первый определяет естественный цвет объекта, а второй – размер и форму бликов на его поверхности. Параметр face определяет тип граней, для которых задается этот материал и может принимать значения GL_FRONT, GL_BACK или GL_FRONT_AND_BACK. Если в сцене материалы объектов различаются лишь одним параметром, рекомендуется сначала установить нужный режим, вызвав glEnable() c параметром GL_COLOR_MATERIAL, а затем использовать команду void glColorMaterial(GLenum face, GLenum pname) где параметр face имеет аналогичный смысл, а параметр pname может принимать все перечисленные значения. После этого, значения выбранного с помощью pname свойства материала для конкретного объекта (или вершины) устанавливается вызовом команды glColor..(), что позволяет избежать вызовов более ресурсоемкой команды glMaterial..() и повышает эффективность программы. Источники света Добавить в сцену источник света можно с помощью команд void glLight[i f](GLenum light, GLenum pname, GLfloat param) void glLight[i f](GLenum light, GLenum pname, GLfloat *params) Параметр light однозначно определяет источник,и выбирается из набора специальных символических имен вида GL_LIGHTi, где i должно лежать в диапазоне от 0 до GL_MAX_LIGHT, которое не превосходит восьми. Оставшиеся два параметра имеют аналогичный смысл, что и в команде glMaterial..(). Рассмотрим их назначение (вначале описываются параметры для первой команды, затем для второй): GL_SPOT_EXPONENT параметр param должен содержать целое или вещественное число от 0 до 128, задающее распределение интенсивности света. Этот параметр описывает уровень сфокусированности источника света. Значение по умолчанию: 0 (рассеянный свет). GL_SPOT_CUTOFF параметр param должен содержать целое или вещественное число между 0 и 90 или равное 180, которое определяет максимальный угол разброса света. Значение этого параметра есть половина угла в вершине конусовидного светового потока, создаваемого источником. Значение по умолчанию: 180 (рассеянный свет). GL_AMBIENT параметр params должен содержать четыре целых или вещественных значения цветов RGBA, которые определяют цвет фонового освещения. Значение по умолчанию: (0.0, 0.0, 0.0, 1.0). Кафедра АНИ факультета ВМК МГУ имени М. В. Ломоносова http://ani.cs.msu.su 52
Страницы
- « первая
- ‹ предыдущая
- …
- 50
- 51
- 52
- 53
- 54
- …
- следующая ›
- последняя »