Энергия фронта световой волны точечного источника распределяется по поверхности расширяющейся сферы, поэтому из физических соображений освещенность вершины должна убывать пропорционально квадрату расстояния до источника. В рассматриваемых библиотеках можно обеспечить также линейное затухание в функции от расстояния. Для этого можно задавать коэффициенты при линейной и квадратичной составляющих затухания. При вычислении кода цвета используется делитель а + Ъ / + с /2, где / - расстояние от вершины до источника. Коэффициенты а, 6,си другие скалярные характеристики передаются в конвейер функцией д1Мдпт:*() со вторым параметром, равным 61_С0М5ТАМТ_АТТЕМ11АТ10М, IN Е АК_АТТ Е N и АТ10Ы или в^ОиАОРАПС^АТТЕМиАТЮМ.

Если поверхность освещается удаленным источником, то освещенность зависит только от направления света. Для имитации прожектора библиотека позволяет задавать конус, ограничивающий область освещенности углом между осью и образующей конуса (тип 61__5Р0Т_С1Я0РР).

В библиотеке не предусмотрено специальных констант для задания типа источника. Если параметр типа 61__5Р0Т_СиТ0РР равен 180.0°, и позиция не удалена в бесконечность, то создается точечный источник. Если этот угол меньше 180.0°, то получается прожектор, формирующий освещенное пятно. Ему кроме позиции нужно указать направление оси конуса (61__5Р0Т_0ШЕСТЮМ).

Интенсивность рассеянного света может не входить в характеристики источников, так как это общий для сцены результат многократного отражения лучей всех источников. Рассеянный свет задается функцией задания цветовой модели д1 Идп1Мос1е1*(). Когда рассеянный свет не задается явно, то в сцене используется значение по умолчанию (0.2,0.2,0.2,1.0). Функция д1 И дШ1о<1е1 *() позволяет также задать необходимость вычисления освещенности тыльных граней и вычисления направления на источник света в каждой вершине. Если источник помещен достаточно далеко, для всех вершин можно использовать один вектор направления на источник точечного света и тем ускорить вычисления.


⇐ Предыдущая| |Следующая ⇒