Меню сайта




[DS]: Half-Life Server
[DS]: Half-Life Server


[DS]: CS:S GunGame v34 Server
[DS]: CS:S GunGame v34 Server


[DS]: CS:S v34 Server
[DS]: CS:S v34 Server


Поиск

add_newДобавить новость
Последние добавленные
Название игры: S.I.P: Out Life
Жанр: FPS, с элементами RPG
Язык: с++, скрипты lua
G API: DirectX 9
Сайт: sip-game.su
Группа Vk: vk....
Читать далее

<JAM>
m1-palinka


HL-HEV
hl-hev

DS-Servers
Статьи
Туториалы
Маппинг
Goldsrc
Создание карт
Свет

Вращающийся свет



Вращающийся свет
Добавил: root
2013-01-07 07:19:57
20 просмотров

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

Для начала создадим небольшой браш, который будет изображать лампочку. Превратим его [Ctrl-T] в объект func_wall, чтобы он не разбивал на дополнительные полигоны стену, с которой соприкасается. Никаких свойств для func_wall выставлять не требуется.

Теперь перед лампочкой разместим источник света, обычный light (см. рис. ниже).

Создаем под около лампочки объект light



А сейчас от Вас потребуются навыки работы с вертексами. Мы приступаем к созданию формы вращающихся лучей. Используем стандарную градиентную текстуру FADE2 или FADE, как это мы делали в статье про создание световых лучей. Важным моментом является правильное нанесение текстуры на будущие лучи. Темные (черные) места должны находится у краев лучей, а светлые (желтые) в середине. Возможно, Вам придется изменить масштаб (scale) текстуры, повращать ее, применить различное выравнивание. Должно получиться что-то вроде этого:

Создаем лучи из двух брашей (текстура FADE2) и браш-ось вращения (текстура ORIGIN)



Маленький бело-зеленый браш — это ORIGIN-браш (обычный браш, окрашенный со всех сторон специальной текстурой ORIGIN). Он необходим для любого вращающегося объекта, т.к. указывает ось вращения (в Учебнике есть очень подробная статья о правильном использовании ORIGIN-брашей). Так как у нас вращающийся свет, то такой браш необходимо создать.

Место размещения ORIGIN-браша очень важно. Так как наши лучи будут вращаться вдоль стенки, то ORIGIN-браш следует размещать между двумя лучами (ровно посередине). Для наглядности мы удлиннили ORIGIN-браш по той оси, вдоль которой будет происходить вращение. На рисунках ниже показаны вид сбоку и спереди.

Определение оси вращения при помощи флагов



Размещение оси вращения (ORIGIN-браша)



Следующий важный момент. Превращаем приготовленные два браша (луча) и ORIGIN-браш в единый энтити-объект func_rotating. Для этого выделяем с зажатой клавишей Ctrl оба луча и ORIGIN-браш. Нажимаем [Ctrl-T] и в списке выбираем func_rotating.

Теперь выставим свойства func_rotating:

Render Mode — Additive (чтобы лучи были прозрачными);
FX Amount — 60 (прозрачность лучей, чем больше значение, тем отчетливее видны лучи. Максимум: 255);
Speed — 400 (скорость вращения лучей, можно поэкспериментировать);
Остальные параметры пока оставим как есть.

Помимо свойств следует обязательно выставить некоторые флаги (см. рис. ниже).

Выставляем флаги у объекта func_rotating



Start ON — чтобы лучи начали вращаться автоматически после начала раунда;
Not Solid — необходим, чтобы игрок мог свободно проходить через лучи. В противном случае он будет задевать о них головой :)
X Axis — здесь определяется ось вращения лучей. Возможные значения: X Axis или Y Axis, которые определяют вращение вокруг соответствующих осей. Если оставить эти флаги неотмеченными, то лучи будут вращаться вокруг вертикальной оси Z, которая на любом виде направлена снизу-вверх.


Определение оси вращения

Давайте более подробно остановимся на этом очень важном моменте определения оси вращения.

ORIGIN-браш, включенный в состав объекта func_rotating своим центром определяет точку в пространстве, вокруг которой происходит вращение. А собственно ось вращения выбирается во флагах: или X, или Y. Напомним, что если флаги не отмечать, вращение будет происходить вокруг вертикальной оси Z (см. два рисунка выше).

Лучи готовы. Компилируем, запускаем и видим следующий результат:

Так выглядят вращающиеся лучи в игре



Если необходимо, чтобы лучи вращались в противоположном направлении, то следует отметить флаг Reverse Direction.


rotating_light.zip [9Кб] — в архиве карта-пример в форматах BSP и RMF.


§ 8.1 Общая информация об освещении
§ 8.2 Естественное освещение (солнце)
§ 8.3 Искусственное освещение (лампочки)
§ 8.4 Эффект световых лучей
§ 8.5 Эффект дымки вокруг источников света
§ 8.6 Вращающийся свет
§ 8.7 Блокирование света объектами
§ 8.8 Огонь

Поделиться:
Тэги:

DS-Servers.com
Copyright © 2012-2016. All Rights Reserved.
При копировании материала ссылка на источник обязательна
За материалы, размещенные пользователями, администрация сайта ответственности НЕ несет