CreateLight ( [type][,parent] )

Параметры

type (не обязательно) - тип источника света
1: directional - направленный (по умолчанию)
2: point - точечный
3: spot - прожектор

parent (не обязательно) - родительский объект, к которому будет привязан источник света

Описание

Создает источник света.

Источник света изменяет цвет всех вершин в границах действия. Нужно создавать по крайней мере один источник света в трехмерной сцене, иначе все объекты будут выглядеть плоскими.

Дополнительный параметр типа позволяет Вам определять тип источника света, который Вы желаете создать. Значение 1 создает направленный свет. Этот источник света работает наподобие солнца, сияющему на небе. Все стены, стоящие в одинаковом направлении, освещаются одинаково. Количество света, падающего на них, зависит от угла на источник. Направленный свет имеет неограниченное 'положение' и неограниченное расстояние действия.

Значение 2 создает точечный (omni) источник света. Это похоже на свет лампочки в доме, начинающийся с центральной точки и постепенно ослабевающий с расстоянием.

Значение 3 создает конус света, похожий на прожектор или фару машины. Он начинается от вершины конуса и направлен к основанию. Вы можете изменить угол вершины этого конуса ( ширину луча) командой LightConeAngles.

Дополнительный родительский параметр позволяет Вам определять родительский объект для источника света так, чтобы, когда родитель будет перемещаться, дочерний источник будет двигаться вместе с ним. Однако, эта зависимость - односторонняя: применение команд движения к дочернему объекту не будет затрагивать родителя.

Если родительский объект указан, камера появится в координатах 0,0,0 относительно позиции родительского объекта (локальная система координат, привязанная к родительскому объекту).

Дополнительные сведения:
Есть ограничение DirectX на число источников света, доступных в сцене - это 8 или 16 в зависимости от вашей видеокарты, но Вы должны всегда использовать 8.

Кроме того, Вы должны помнить, что каждый источник света снижает скорость визуализации (рендеринга) сцены.

Освещенные объекты не отбрасывают тени, как они это делают в действительности.

В большинстве игр эти проблемы решаются при помощи использования предваритетьно подготовленных карт освещения для статической геометрии в сцене.

Другие методы освещения : изменение цветов вершин, динамические тени, и/или динамическое освещение .

Смотрите также : LightRange, LightColor, LightConeAngles, AmbientLight.

Пример

Graphics3D 640,480

camera = CreateCamera()
MoveEntity camera,0,0,-3

ball = CreateSphere()

lite = CreateLight(1) ; измените на 2 или 3, чтобы увидеть другие результаты
MoveEntity lite,5,0,0
PointEntity lite,ball ; свет направлен на шар

While Not KeyDown(1)
RenderWorld:Flip
Wend
End

Главная страница

Нажмите сюда, чтобы увидеть последнюю версию этой страницы в интернете