К содержимому

[mapping] Вращающиеся лучи

Спасибо npocTo_LaM за данный метод ;) Пример использования данных лучей можно просмотреть на карте 35hp_party_2 Для создания крутящихся лучей нам понадобится Env_beam(16 шт.) Func_train(16 шт.) Info_target(1 шт.) Path_corner(16 шт.) Multi_manager(2 шт) Trigger_auto(1 шт.) Описание работы Лучи…

Гайд·4 мин чтения·SkripПросмотры:13Комментарии:0
Содержание
  1. Для создания крутящихся лучей нам понадобится
  2. Описание работы
  3. Создание механизма
rays

Спасибо 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

Создание механизма

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

Параметры:

Info_target

Значение

Name

l_start

2) Точку начала мы создали. Следующим шагом будет создание путей для лучей. В нашем случае лучи должны крутиться по кругу. Для более правильной установки наших путей, создаем цилиндр. Сам цилиндр нам нужен только сейчас, в самом конце его мы обязательно удалим. На вершины цилиндра будем устанавливать энтить path_corner.

rays1

Рис. 1 — создание цилиндра.

Всего вершин 16, соответственно, я хочу задействовать их всех.
Создаем первый path_corner с параметрами:

Параметры:

Path_corner

Значение

//

Name

lp_01

Имя энтити

Next Stop target

lp_02

Имя след. path_corner

Соответственно, следующий path_corner будет иметь такие параметры:

Path_corner

Значение

Name

lp_02

Next Stop target

lp_03

В итоге 16 объектов path_corner. Последний path_corner имеет следующие параметры:

Path_corner

Значение

Name

lp_16

Next Stop target

lp_01

Тоесть выходит вечный двигатель.

rays2

Рис. 2 — Расстановка path_corner на вершины цилиндра.

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

Флаги:

Flags

Not Solid

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

rays3

Рис. 3 — Первая мишень func_train. Последний объект, как выглядит мишень-поезд в разрезе.

Выполняем подобную операцию, как с путями(path_corner):

rays4

Рис. 4 — Расстановка func_train напротив path_corner.

rays4_1

Рис. 4.1 — Промежуточный рисунок. Внимание на имена func_train’ов.

4) Практически все готово для завершения нашего механизма, но где же сами лучи? Мы кадрас-таки подошли к их созданию. Использовать будем env_beam.
Создадим первый env_beam с параметрами:

Параметры:

Env_beam

Значение

//

Start Entity

l_start

Имя мишени(неизменяем)

Ending Entity

lt_01

Конец луча. Указываем на соответствующую мишень-поезд.

Brightness

255

Яркость(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

Урон в секунду

Флаги:

Flags

Start on

Включен в начале раунда(необязательно, т.к. имени у луча нету, соответственно, он уже включен.)

Fade Start

Затемнение вначале луча. Использовать не будем.

Fade End

Затемнение на конце луча.

Расставляем все 16 объектов env_beam напротив каждой мишени, на которую он ссылается. Это для удобства, расставлять их можно в любом порядке.

rays5

Рис. 5 — Расстановка лучей напротив своей цели.

5) Заключительный этап. Для движения наших лучей нужно активировать все func_train. Будем использовать multi_manager и trigger_auto.
Создаем trigger_auto с параметрами:

Параметры:

Trigger_auto

Значение

//

Start Entity

l_start_mm

Имя multi_manager’а

Trigger State

on

Состояние триггера

Флаги:

Flags

Remove on fire

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

Следующий шаг: Создадим 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

Параметры 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

rays6

Рис. 6 — В итоге получаем такую картину:

Автор: Skrip

Карта пример, исходник+тутор в doc:
https://www.dropbox.com/s/1f1g507dvszf8w6/CSM.rar?dl=0

Комментарии

Комментариев пока нет.