Breakable Light, или РАССТРЕЛИВАЕМ ЛАМПОЧКИ

Помогаем новичкам в создании своего мира
Сообщение
Автор
Аватара пользователя
zerg_spb
Маппер
Маппер
Сообщения: 823
Зарегистрирован: 11.06.2006
Благодарил (а): 1 раз
Поблагодарили: 32 раза
Контактная информация:

#1 Сообщение 27.04.2008, 17:11

Сначала ставим на карту пропстатик светильника, который мы собираемся расстреливать - это может быть любая модель лампы, потолочный или настенный светильник, ну или прожектор.В данном случае это props_wasterland/light_spotlight01_lamp.
Прямо перед моделью лампы помещаем направленный источник света - light_spot и его "слепящий" луч - point_spotlight.
light_0.jpg
light_0.jpg (70.17 КБ) 2452 просмотра
light_0.jpg
light_0.jpg (70.17 КБ) 2452 просмотра
После того, как мы определились с цветом, яркостью и всем тем, что называется реалистичностью, следует приступить непосредственно к созданию своего рода спускового механизма, который выключит все споты и лайты. Создаем браш, полностью покрытый текстурой Nodraw и поместите его перед стеклянной частью лампы.
После этого превращаем его (выбираем в меню пункт Tools/Tie to Entity или жмем Ctrl+T) в func_breakable.
Для большего реализма и имитации разбитого стекла в свойствах указываем материал:
Material Type - Glass
Prop Data - Glass.Small
light-1.gif
light-1.gif (18.67 КБ) 2444 просмотра
light-1.gif
light-1.gif (18.67 КБ) 2444 просмотра
Заходим в свойства каждой энтити, и в поле name называем их понятными нам именами:

light_spot Имя: Light01_Light
point_spotlight Имя: Light01_Beam
funk_breakable Имя: Light01_Breakable

Заключительным шагом будет настройка Аутпутов у funk_breakable:
Заходим в свойствах на вкладку Outputs

My output named: OnBreak
Target entities named: [Name of the light_spot]
Via this input: TurnOff
Fire once only: [x]

My output named: OnBreak
Target entities named: [Name of the point_spotlight]
Via this input: LightOff
Fire once only: [x]
light-2.gif
light-2.gif (15.03 КБ) 2452 просмотра
light-2.gif
light-2.gif (15.03 КБ) 2452 просмотра
Если вместо point_spotlight Вы поставили Sprite, то второй Аутпут должен выглядеть так:
My output named: OnBreak
Target entities named: [Name of the Sprite]
Via this input: Kill
Fire once only: [x]


Если вдруг после компиляции какой-то из лайтов не появляется, то следует отодвинуть их чуть дальше друг от друга, есть вероятность, что они попали внутрь модели лампы.

Аватара пользователя
zerg_spb
Маппер
Маппер
Сообщения: 823
Зарегистрирован: 11.06.2006
Благодарил (а): 1 раз
Поблагодарили: 32 раза
Контактная информация:

#2 Сообщение 28.04.2008, 13:45

Теперь можно рассмотреть более продвинутый вариант - при выстреле модель прожектора будет менять свой скин со "включенного" на "потухший", и будет сыпаться сноп искр.
light_4.jpg
light_4.jpg (41.87 КБ) 2400 просмотров
light_4.jpg
light_4.jpg (41.87 КБ) 2400 просмотров
Модель props_wasterland/light_spotlight01_lamp ставим не prop_static`ом, а prop_dynamic`ом.
Открываем ее свойства и ставим:

skin "0"
name "model"

Добавляем на карту энтитю env_spark
Открываем ее свойства:

Name "spark"
Magnitude "Huge"
Spark Trail Length "Long"


В свойства funk_breakable добавляем еще два Аутпута:

My output named: OnBreak
Target entities named: [Name of the env_spark]
Via this input: SparkOnce
Fire once only: [x]

My output named: OnBreak
Target entities named: [Name of the prop_dynamic]
Via this input: Skin
With a parameter overraid of: 1 [Номер скина]
Fire once only: [x]
light-3.gif
light-3.gif (16.5 КБ) 2475 просмотров
light-3.gif
light-3.gif (16.5 КБ) 2475 просмотров

Ответить Вложения 5