Sidebar

Крутящиеся лучи.

  • Рекомендуется задавать вопросы только относительно темы с уроком. Для остальных вопросов существует раздел [url=http://cs-mapping.com.ua/forum/forumdisplay.php?f=12]«Помощь»[/url].

    Темы с просьбами помощи будут удаляться без предупреждения и без объяснения причины.

    Запрещается поднятие старой темы оффтопом. Ваше сообщение будет удалено, а в профиль будет выписано замечание.

Chakki Skrip

Active member
13.09.2014
514
24
83
28
next21.ru
Крутящиеся лучи.

Спасибо npocTo_LaM за данный метод ;)
Пример использования данных лучей можно просмотреть на карте 35hp_party_2
Для создания крутящихся лучей нам понадобится:

• Env_beam(16 шт.)
• Func_train(16 шт.)
• Info_target(1 шт.)
• Path_corner(16 шт.)
• Multi_manager(2 шт)
• Trigger_auto(1 шт.)

Описание работы: Лучи созданы с помощью энтитей env_beam. Начальной точкой лучей будет энтить info_target, а конечными func_train. Поезд двигается по путям из path_corner. Но для движения поезда и соответственно лучей, требуется активировать func_train’ы. Для данной цели будем использовать multi_manager, в котором прописаны имена мишеней-поездов. А для того, чтобы наш механизм работал сам по себе, создадим trigger_auto с таргетом на multi_manager. Все очень просто.

Сокращения в Name/Target и т.д.:
l_start Laser Start
lp_01 Laser Path_нумерация
lt_01 Laser Train_нумерация
l_start_mm Laser Start MultiManager

[tbody]

[/tbody]

Создание механизма:
1) Первым делом создадим энтить info_target. Именно она послужит точкой выхода лучей(начало).
Параметры:
Info_target Значение
Name l_start

[thead]

[/thead]
[tbody]

[/tbody]

2) Точку начала мы создали. Следующим шагом будет создание путей для лучей. В нашем случае лучи должны крутиться по кругу. Для более правильной установки наших путей, создаем цилиндр. Сам цилиндр нам нужен только сейчас, в самом конце его мы обязательно удалим.
Рис. 1 — создание цилиндра. На вершины цилиндра будем устанавливать энтить path_corner.
1.jpg
Всего вершин 16, соответственно, я хочу задействовать их всех.
Создаем первый path_corner с параметрами:
Параметры:
Path_corner Значение //
Name lp_01 Имя энтити
Next Stop target lp_02 Имя след. path_corner

[thead]

[/thead]
[tbody]

[/tbody]
Соответственно, следующий path_corner будет иметь такие параметры:
Path_corner Значение
Name lp_02
Next Stop target lp_03

[thead]

[/thead]
[tbody]

[/tbody]
В итоге 16 объектов path_corner. Последний path_corner имеет следующие параметры:
Path_corner Значение
Name lp_16
Next Stop target lp_01

[thead]

[/thead]
[tbody]

[/tbody]
Тоесть выходит вечный двигатель.
Рис. 2 — Расстановка path_corner на вершины цилиндра.
2.jpg
3) Пустим по уже созданным путям наш поезд. Он служит в качестве мишени, мы будем использовать его, для указания конца луча.
Первым делом создаем браш с размерами 16x16x16 юнитов, покроем текстурой null. В центре нашего браша создадим еще один с размерами 8x8x8, наложим текстуру origin. Выделяем два созданных браша, превращаем(Ctrl+T) в энтить(сущность) func_train с параметрами:
Параметры:
Func_train Значение //
Name lt_01 Имя мишени
Render Mode Normal Режим отображения
FX Ammount 0 Прозрачность.Полностью прозрачный
First stop target lp_01 Имя соотв. Path_corner.
Speed 256 Скорость. Юниты/с.
Sound volume 0.00001

[thead]

[/thead]
[tbody]

[/tbody]

Flags
Not Solid Делает поезд не материальным

[thead]

[/thead]
[tbody]

[/tbody]
Рис. 3 — Первая мишень func_train. Последний объект, как выглядит мишень-поезд в разрезе.
3.jpg
Выполняем подобную операцию, как с путями(path_corner):
Рис. 4 — Расстановка func_train напротив path_corner.
4.jpg
Рис. 4.1 — Промежуточный рисунок. Внимание на имена func_train’ов.
4_1.jpg
4) Практически все готово для завершения нашего механизма, но где же сами лучи? Мы кадрас-таки подошли к их созданию. Использовать будем env_beam.
Создадим первый env_beam с параметрами:
Параметры:
Env_beam Значение //
Start Entity l_start Имя мишени(неизменяем)
Ending Entity lt_01 Конец луча. Указываем на соответствующую мишень-поезд.
Brightness 256 Яркость(0-255). Яркий.
Beam Color 0 170 0 Цвет лучей. RGB. Цвет каждого луча ничем не ограничивается.
Life 0 Жизнь луча в с.. 0 – бесконечное множество времени.
Width of beam(pixels*0.1) 0-255 20 Ширина луча. Пиксели*0.1. В нашем случае выйдет 2 пикселя.
Amount of noise 0 Уровень искривления луча (0 - 255).
Damage 0 Урон в секунду

[thead]

[/thead]
[tbody]

[/tbody]

Flags
Start on Включен в начале раунда(необязательно, т.к. имени у луча нету, соответственно, он уже включен.)
Fade Start Затемнение вначале луча. Использовать не будем.

[thead]

[/thead]
[tbody]

[/tbody]
Рис. 5 — Расстановка лучей напротив своей цели.
5.jpg
5) Заключительный этап. Для движения наших лучей нужно активировать все func_train. Будем использовать multi_manager и trigger_auto.
Создаем trigger_auto с параметрами:
Параметры:
Значение //
Start Entity l_start_mm Имя multi_manager’а
Trigger State on Состояние триггера

[thead]
[td Trigger_auto [/td]
[/thead]
[tbody]

[/tbody]

Flags
Remove on fire Галочку убрать. Уничтожить объект t_a на все раунды.

[thead]

[/thead]
[tbody]

[/tbody]

Следующий шаг: Создадим 2 multi_manager’а с параметрами:
Параметры 1-го mm:
Для добавления новых параметров отожмем кнопку SmartEdit
Multi_manager Значение //
targetname l_start_mm Имя multi_manager’а
lt_01 0 Активация объекта через время.
lt_02 0
lt_03 0
lt_04 0
lt_05 0
lt_06 0
lt_07 0
lt_08 0

[thead]

[/thead]
[tbody]

[/tbody]

Параметры 2-го mm:
Для добавления новых параметров отожмем кнопку SmartEdit
Multi_manager Значение //
targetname l_start_mm Имя multi_manager’а
lt_09 0
lt_10 0
lt_11 0
lt_12 0
lt_13 0
lt_14 0
lt_15 0
lt_16 0

[thead]

[/thead]
[tbody]

[/tbody]
Рис. 6 — В итоге получаем такую картину:
6.jpg
hl_2018-02-04_14-58-01-06.gif
Оффтоп
Карта пример, исходник+тутор в doc:
https://www.dropbox.com/s/1f1g507dvszf8w6/CSM.rar?dl=0
 
Последнее редактирование:

Chakki Skrip

Active member
13.09.2014
514
24
83
28
next21.ru
2 qpAHToMAS:
Это да) С этим врядли что поделаешь, но можно сочетать его со звуками на карте :)
 

qpAHToMAS

Well-known member
22.10.2006
9 328
28
  • Золотая медаль 152
  • Серебряная медаль 136
  • Золотая медаль 221
Skrip*** сказал(а):
2 qpAHToMAS:
Это да) С этим врядли что поделаешь, но можно сочетать его со звуками на карте :)
Дядя Миша онлайн? Было бы интересно, если бы поведал, почему так, зачем так накодили.

Flash сказал(а):
Лучше сделай гифку вместо видео, для наглядности.
Что-то цвета сильно сжимаются при таком освещении :(.
 
Последнее редактирование модератором:

ZGreen

Navarro
15.06.2006
3 231
32
  • Спец медаль MM18
Думается мне, что такая карта через интернет будет подлагивать, может лучше сделать крутящийся конус с текстуркой? Или конус с анимированной текстурой? Все таки энтити-то каждый кадр гоняются на клиент. Или я неправ?
 
  • Like
Reactions: hypax

Chakki Skrip

Active member
13.09.2014
514
24
83
28
next21.ru
2 Flash:
Гифку и хотел изначально, но подходящего сервиса для ее создания найти не смог. В принципе, попробую кадры из демо вытащить, а потом сделать в анимацию.
2 ZGreen:
При большом количестве, да, события будут лагать, а так все в порядке) Брашами смотрится не очень, лучше моделькой попробовать)
 

npocTo_LaM

New member
27.10.2012
1 471
48
0
  • Золотая медаль 311
Вполне вероятно, что будет подлагивать. Это просто один из способ реализации подобного "светового" эффекта. Сдается мне, что в движке ГС есть небольшой глюк - "поезда" иногда сбиваются в кучу (сталкивался не один раз). На упомянутой карте было много полигонов, таким образом предпринималась попытка уменьшить их количество, а "красоту" сохранить.
 

Chakki Skrip

Active member
13.09.2014
514
24
83
28
next21.ru
2 crystallize:
Как один из способов создания, да, можно. Но как уже говорилось выше, был высокий полигонаж, поэтому сделано так. На мой вгляд куда красивее, нежели чем делать чем-то еще). Но основной целью, как я считаю, показать тому, кто не знал, то, что их можно двигать)
 

DrTressi

Хрустик
06.03.2010
6 421
26
  • Журналист
Да, я бы тоже сделал крутящийся конус, покрашенный в лучи. Но за видно, что статья написана подробно и вложено не мало старания в её написание. Поэтому заслуживает репы.

[ADDED=DrTressi]1517757748[/ADDED]
Кстати, если ещё парочке этих поездов добавить параметр effects 2-64(значение не помню, надо подбирать), то будет ещё и динамический свет.

И ещё вспомнил, что лазерам можно указать конечный спрайт, который тоже будет "приаттачен" к поездам. Хороший способ двигать спрайты.
 
Последнее редактирование:
  • Like
Reactions: hypax

FiEctro

Супер Модератор
Команда форума
Супер Модератор
28.07.2006
17 154
28
  • Золотая медаль 213
  • Neh
Чем то напомнило карту пример из хлсдк :)
 
  • Like
Reactions: hypax

hypax

Парам парам пам! ПАМ!
18.07.2013
581
2 Skrip***:
Круто,однозначно полезно!Я в свое время игру сделал используя лазеры,простые гонки,где нужно уворачиваться от машинок.А тут где-то еще была тема с картой,на которой был реализован кран,которым можно было управлять и перемещать коробки.И все это благодаря env_beam. :drink:
 

FiEctro

Супер Модератор
Команда форума
Супер Модератор
28.07.2006
17 154
28
  • Золотая медаль 213
  • Neh
Дядя Миша сказал(а):
Если NULL.wav генерить в редакторе, то его не слышно. ТАДА встал вопрос - как делали null.wav в халфе, раз его слышно.

Скорее всего артефакты сжатия.
 

qpAHToMAS

Well-known member
22.10.2006
9 328
28
  • Золотая медаль 152
  • Серебряная медаль 136
  • Золотая медаль 221

Half-Life: Alyx release

000
Дней
00
часа(ов)
00
minutes
00
Секунды
До выхода Half-Life: Alyx
Half-Life: Alyx вышел!

Донат - Хостинг

Итого
125.00 $
Цель
600.00 $

Доноры Красавчики

Пользователи онлайн