SPOTLIGHT
Документы VRML используют узел SpotLight (прожектор) для направленной подсветки объектов. Узел SpotLight определяет направленный источник освещения, который может воздействовать на формы в сцене графа в соответствии с текущим стилем освещения. Следующий код иллюстрирует имена полей и их значения по умолчанию для узла SpotLight:
SpotLight | { | |
color | 1 1 1 | # SFVec3f |
cutOffAngle |
0.785398 | # SFFloat |
direction | 0 0 -1 | # SFVec3f |
dropOffRate | 0 | # SFFloat |
intensity | 1 | # SFFloat |
location | 0 0 1 | # SFVec3f |
on | TRUE | # SFBool |
} |
Поле color определяет смесь цветов: красного, зеленого и голубого. Например, чтобы выбрать красный прожектор, следует придать полю color значение, равное 100. Броузер направит лучи прожектора в конусе вокруг трехмерного вектора направления, заданного полем direction. Интенсивность света уменьшается экспоненциально по мере смещения лучей от центра конуса. Поле cutOffAngle контролирует угол конуса.
Поле location определяет координаты прожектора в рамках графа сцены. Поле direction направляет источник света в направлении, заданном этим полем. Поле drop OffRate задает, как быстро спадает освещенность по мере увеличения расстояния (принимает значение от 0 до 1, где 0 соответствует наименьшему ослаблению с расстояния).
И, наконец, поле on включает (значение TRUE) и выключает (значение FALSE) прожектор. Поле intensify управляет интенсивностью освещения. Его значение изменяется от 0 (низкая интенсивность) до 1 (высокая интенсивность). Броузер применяет текущее преобразование к узлу SpotLight. Если узел SpotLight расположен внутри узла Separator, то он не влияет на объекты, расположенные вне узла Separator.