Event animator в Serious Editor 3.5.


1.1Вступление:

Всем привет, в данной статье будет разобран инструмент Event animator и так же я подробно опишу параметры Post processing effect. Если кому-то нужен тестовый уровень, видео которого находится в конце статьи, то его можно скачать здесь.

2.1Что делает Event animator?:

Event animator — это инструмент, который позволяет анимировать некоторые эффекты при помощи кривых (графиков), т.е. он позваляет ослаблять или усиливать действие какого-либо эффекта. Он контролирует PostProcessingEffect, Flare, Haze, ParticleEffect и даже FastLight, OmniLight, SpotLight и DistantLight!

2.2Устройство Event animator'а:

У Event animator есть 2 выжных параметра: controlled from script и simple animator. Параметр simple animator: в нем создаются анимации симуляции, которые контролируют какой-либо эффект, в отличии от обычной анимации, она описывается в двухмерной системе координат, при помощи графиков(кривых). Для создания анимации симуляции нажмите на желтый плюс(«+»), расположенный правее строки Animations. Назовите ее и выберете нужный вам график(строка Envelope).


Существует 9 типов графиков:
Combine graphs( комбинированние графиков): соединяет два графика(Fist graphs и Second graphs) в один график, строка Operation позволяет подобрать оптимальный параметр соединения. Это очень интересный тип графика, с помощью него можно добиться очень хорошего результата. Например,если объеденить графики Sine и Random,то получится очень интересный график, который подходит для анимирования Particle Effect.




Linear(линия): простой линейный график, к нему можно добавлять точки,задает эффекту постоянное значение.( про создание точек будет написано ниже)
Stretch x, y – расстягивание графика по x, y координатам.
Loop period – период проигрования одного цикла, измеряется в секундах.


Random: создает рандомный график, с резкими переходами. Если в графике изменить позиции точек(про работу с графиком будет написано ниже), то можно получить интересный эффект мигания света.

Sine(синус): создает синусоиду. Stretch x отвечает за перемещение точек максимума и минимума.

StepDown: линия ,идущая вниз, данный тип графика подходит для создания затухания эффекта.

Steps: график-лесенка, довольно резкое пошаговое усиление эффекта, если вам нужно сделать пошаговое рассеивание эффекта, то в режиме редактирования точек измените позиции точек по оси y.
Count of steps – кол-во «ступенек» на графике, очень выжная настройка, если вы хотите сделать более детальный переход.

StepUp: линия, идущая вверх, данный тип графика подходит для создания усиления эффекта.

Single value: однозначный график, к нему нельзя добавлять точки.

CEditChannelGraph: график-пустышка, всегда находится на нуле.

2.3Редактирование кривых:

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

И так, создаем новую анимацию в нашем Event animator'е, в строке Envelope выбираем
линейный график(Liner). Нажимаем на кнопку редактирования графика, она находится чуть правее от типа графика. Вылезет окошко Graph, пока что ваш график состоит из прямой, состоящей из одной точки, выделите точку, зажмите Shift и щелкните ПКМ по графику, на графике появится еще одна точка, теперь ее нужно отредактировать. На графике можно перемещать точки вручную или задавать им нужные координаты на панели, расположенной снизу от графика.

Эту панель можно скрыть, для этого щелкните ПКМ по графику и выбирите строку Advanced options.


Shap to grid x,y: включает ограниченное движение по оси x или y, позволяет двигаться только по делениям, чем сильней вы приближаете, тем больше делений появляется, и соответственно, чем сильней вы отдаляете, тем меньше делений появляется. Очень полезная опция.



2.4Параметры PostProcessingEffect:

Давайте для начала разберемся как работает Post Processing. В широком смыле — это то, что происходит после основных действий построения изображения(после его рендеринга) , т.е. вторичная обработка изображения, наложения различных фильтров и масок для создания различных эффектов.

Т.к. этот инструмент отвечает за большое колличество различных эффектов, то он имеет много разных пареметров, давайте разберем их.

Параметры блока EV: EV step, EV max, EV min, EV mid, EV compensation, EV adaptation speed, EV anti-clip treshold - отвечают за максимальную, минимальную осветленность в радиусе действия эффекта, так же за скорость перехода и компенсацию осветленности.

Вот пример использования параметров EV:






Сравните оба скриншота. При помощи этих параметров, можно добиться нужной вам осветленности.

Параметры блока Bloom: Bloom treshold, Bloom strength, Bloom radius. Bloom – это эффект, котоый создает размытость на светлых участках сцены.

Bloom treshold: порог блума, параметр который отвечает за кол-во захватываемого пространства для добавления эффекта. Значение -1 полностью осветляет сцену, значение 0 - максимальное значение для эффекта, значение 10 - минимальное значение эффекта.

Bloom stength : сила блума, меняет насыщенность эффекта.

Bloom radius: радиус блума.

Интенсивность блума зависит от осветленности(от значений блока EV) на сцене, если у вас на карте недостаточно яркости, то блум не будет работать в полную силу.

Вот пример использования блума:






Motion blur strength: сила размытия изображения, создает эффект быстрого движения.



Gaussian blur radius: размытие Гаусса(или фильтр Гаусса), используется для сильного размытия изображения, максимальное значение 100.

Вот пример использования Gaussian blur radius:




DoF aperture size(Depth of Field): радиус глубины резкости. Данная настройка размывает объекты в зависимости от их положения относительно фокуса камеры. Работает аналогично своему механическому аналогу. Чем меньше значение, тем больше будет радиус эффекта. Работает в диапазоне от 0 до 1.

Вот пример использования DoF:






Параметры блока Cue: Cue max blur radius, Cue start distance, Cue end distance. Данный блок эффектов добавляет шумы на определенном расстоянии, за расстояние, на котором будут появляться шумы отвечают параметры start и end distance, за интенсивность шумов отвечает параметр Cue max blur radius, максимальное значение 10.

Вот пример использования шумов:






Gamma correction: измененяет гамму цветов, данный параметр лучше оставить стандартным, т.к. почти любые изменения гаммы делают вышу карту неестественной. Если вы хотите сделать необычную атмосферу карты, то этот параметр подойдет.

Saturation adjust: отвечает за насыщенность цвета, с помощью него можно добиться ярких картинок. Значение -1 делает картинку черно-белой.

Вот пример использования Saturation adjust:







Lightness adjust: подгон света, осветляет карту. Данную настройку хорошо использовать в заставках при переходах от одной камеры к другой, если связать ее с Event animator'ом.

Блок Streaks Source: Light steaks length, Streaks brightness. Данный блок контролирует инструмен Streaks Source. С помощью этого инструмента и этих параметров Post Processing можно создавать эффект рассеивающихся лучей. Параметр Light steaks length контолирует длину рассеянных лучей, а Streaks brightness контролирует яркость лучей.

Для того, что бы получить эффект рассеянных лучей нужно, что бы зоны действия Streaks Source и настроенного Post Processing пересекались друг с другом.

Вот пример использования блока Steaks Source с инструментом Streaks Source:




Color ramp texture: линейная текстура-фильтр, размером 256x1 пикселей, накладываясь поверх изображения, меняет полностью цветовую гамму. Такие текстуры создаются в любом графическом редакторе при помощи градиента.



Вот пример использования Color ramp texture:



SSAO strength: сила SSAO, SSAO(Screen Space Ambient Occlusion) - преграждение окружающего света в экранном пространстве, программная техника (методика) в трехмерной
компьютерной графике, которая является приближенной имитацией глобального освещения и представляет собой изменённый и усовершенствованный вариант методики Ambient Occulusion. (Информация про SSAO вязта из википедии.) Он затеняет углы и прочие неровности, таким образом он придает дополнительный объем.

Вот пример использования интенсивности SSAO:






Вот и все параметры Post Processing, не забывайте использовать дополнительные Post Processing Effects на своих картах, они позволят вам создать нужную атмосферу уровня, для того что бы ваши дополнительные Post Processing Effects работали в определенной зоне и не перекрывали основной Post Processing, убирайте галочки с Infinite range(бесконечная дальность) и настройте его размер, зону действия вашего Post Processing Effect'а вы можете просмотреть, если включите опцию Selection renges, находится она над окном 3d вида. Размер зоны действия вы можее настроить вручную при помощи клавишь ctrl+shift, рястягивая стрелки осей.

2.5Работа с Event animator:

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

Создайте какой-нибудь простой уровень с небом, освещением и с основным Post Processing Effect.

Event animator и Post Processing Effect: перетащите из папки Effects инструменты Post processing effect и Event animator на ваш уровень. Настройте ваш втроричный Post processing effect, не забудьте убрать галочку с Infinite range и настройте его зону действия, что бы он не перебивал основной Post processing effect. Теперь нужно настроить Event animator(Post Processing работает в диапазоне от 0 до 1, где 0 - это минимум, а 1 - максимум) , создайте анимации для него, я создал 3 анимации, первая - «Go_Up», стандартный график Step Up, усиливает эффект, вторая - «Go_Down», то же стандартный график Step Down, рассеивает эффект, третий - «Null», простой линейный график, лежит на нулевой точке, это анимация «выключает» эффект. В строке Controlled from script выбирите Game scripting.

Теперь, нужно привязать наш Event animator к эффекту, сначала нужно сделать анимации Event animator'а общими, для этого выделите строку Simple animator, щелкните ЛКМ и выбирите в списке Share, выделите строку Simple animator(щелкните по ней ЛКМ и нажмите пробел) строка должна перекраситься в оранжевый цвет, откопируйте ее(нажмите Ctrl+C), далее переключаемся на наш Post processing effect и в строке Animator вставте(Ctrl+V) значения вашего Event animator, это делается аналогично откопирования, строка должна быть тоже выделена. Теперь статус этой строки должен измениться с none на shared, это означает что теперь ваш event animator контролирует эффект.

Теперь осталось активировать Event animator в скрипте. Перетащите скрипт из папки Logic и напишите его, я решил привязать это действие к Generic Item, до взятия объекта эффект находится на нуле(испоьзует анимацию Null), при взятии объекта, эффект постепенно активируется(используется анимация Go_Up), через пару секунд эффект затухает, т.е. использует анимацию Go_Down. Анимации Event animator активируются в скриптах, так же, как и обычные анимации, т.е. при помощи команды StartAnimation:("x"). Скрипт вы можете просмотреть на скриншоте, расположенном ниже.




Все, теперь осталось запустить уровень и увидеть действие Event animator!

Event animator и Flare effect: перетащите из папки Effects инструменты Flare и Event animator на ваш уровень. Выбирите готовый Flare эффект. Создайте какую-нибудь анимацию( я создал две анимации, одна - затухает эффект, другая — выключение эффекта, данный эффект работвет в диапазоне от 0 до 1, где 0 — это максимум, а 1 - минимум) для Event animator и привяжите его к вашему Flare эффекту, делается это все так же, как и с Post processing effect. Не забудьте активировать ваш Event animator через скрипт.

Event animator и Haze effect: перетащите из папки Effects инструменты Haze и Event animator на ваш уровень. Настройте ваш Haze эффект, в Event animator(данный эффект работает в диапазоне от 0 до 1, где 0 -это максимум, а 1 - минимум) создайте какую-нибудь анимацию рассеивания эффекта. Привяжите ваш Event animator к вашему Haze эффекту. Не забудьте активировать ваш Event animator через скрипт.

Event animator и Particle effect: перетащите из папки Effects инструменты Particle effect и Event animator на ваш уровень. Выбирите вашему Particle effect какой-нибудь готовый эффект(я выбрал SS1Emanate), поставьте галочку в строке Auto start у вашего эффекта. Эффект работает в диапазоне от 0 до 1, где 0-это минимум, а 1 — максимум. Создайте какую-нибудь анимацию у вашего Event animator, я выбрал синусоидный тип графика. Привяжите ваш Event animator к вашему Particle effect эффекту. Не забудьте активировать ваш Event animator через скрипт.

Event animator и Fast light: перетащите из папки Effects инструмент Event animator и Fast light из папки Lights на ваш уровень. Настройте ваш Fast light, настройте его цвет, добавте несколько оттенков на цветовую линию, для этого наведите курсор на цветовую линию(color ramp), щелкните по ней ЛКМ и выбирите Insert key frame, не забудте перетащить его на нужную точку и настроить его цвет. Если хотите, то можете слегка сгладить края вашего света, это делается при помощи опции Smoothness.




В Event animator создайте нужную вам анимацию, я выбрал график Random. Event animator разбивает цветовые гаммы(frame на color ramp) света по графику по принципу первый на отрицательной ординате, последний на положительной ординате, если frame больше, то они последовательно выстраиваются между первым и последним frame на графике. Эффект работает в диапазоне от -1 до 1. Event animator привязывается к Fast light так же, как и к другим эффектам. Не забудьте активировать ваш Event animator через скрипт.

Event animator и Omni light: перетащите из папки Effects инструмент Event animator и Omni light из папки Lights на ваш уровень. Настройте ваш Omni light, настройте его основной цвет(опция Color) и его вторичный цвет(цвет при анимировании - Color target for anim). К сожаленнию, Omni light может иметь только 2 оттенка цвета(Event animator переносит вторичный цвет на положительную ординату, а основной цвет на отрицательную ординату). За интенствность освещения отвечает опция Real life lamp converter, в нем заложены разные типы ламп, некотрые светят не так сильно, из-за этого анимация света будет выглядеть чуть-чуть по иному, будет виден переход от вторичного света к серому(обычному) свету. Лампы со «слабым» освещением: custom efficacy input, candle, 40 W tungsten, 100 W tungsten, glass halogen, quartz halogen.

Event animator и Spot light: настраивается так же, как и Omni light.

Event animator и Distant light: настраивается так же, как и Spot и Omni light, только у него отсутствует опция выбора типа света.
P.S.: Хочу сказать, что изменение цвета Distant light это крайнее извращение :), хотя это можно использовать при создании суток.

Не забывайте комбинировать эффекты! К примеру, если использовать вместе анимированные Haze и Post processing эффект, то можно добиться изменения атомосферы карты, или анимированные по синусоидному графику Flare и Omni light, то можно получить сирену, или если использовать все эффекты( с которыми мы работали в этом уроке) с анимированным небом, то можно получить смену суток.


Вот видео моего тестового уровня про Event animator.





Если у вас возникли сложности во время чтения статьи, то этот уровень - пример можете скачать здесь, уровень положите в папку SeriousSam3.

3.1Вывод:
И так, мы разобрали все возможности Event animator, надеюсь этот урок был вам полезен. Удачи всем в маппинге! С вами был ShaolinSolider.


Комментарии   

[Материал]  |  № 4  |  29.09.2014  |  +1  
Ух ты, здорово!
Надо бы поэкспериментировать
Ответ Цитата

[Материал]  |  № 1  |  18.09.2014  |  0  
С размером текста накосячил.
Ответ Цитата

[Материал]  |  № 2  |  18.09.2014  |  +4  
Ничего, так даже лучше.
Очень и очень хорошая статья, кстати.
Ответ Цитата

[Материал]  |  № 3  |  19.09.2014  |  0  
Поддерживаю
Ответ Цитата

Оставьте комментарий

Мини-профиль

Гость

Вы в группе: Гости
Ваш IP: 18.223.108.186

Сейчас обсуждают

SeriousRoman27
BaBuinel41
Boffy1662
Boffy61
Boffy2452
BaBuinel5
AzuNeko6
Ar2R-devil-PiNKy18
Ar2R-devil-PiNKy17
Kraz_Marozov12

МЕМЫ

Файлы

-SR-
334 23 2

SeriousAlexej
5317 1242 55

Devil_D_Stas
2441 882 30

170191Nikolay
6595 1681 64

Tenshi
5919 1717 82

Категории раздела

Croteam [4]
Материалы по студии разработчика игр CroTeam.
Интервью с разработчиками [9]
Интервью с разработчиками, а также их издателями.
Serious Sam 1 [9]
Статьи о Serious Sam 1
Serious Sam 2 [6]
Статьи о Serious Sam 2
Serious Sam HD [4]
Статьи о HD-серии, ремейков классических версий Сэма.
Serious Sam 3: BFE [10]
Статьи о Serious Sam 3: BFE
Уроки по Serious Editor 1 [60]
Уроки по Serious Editor 2 [3]
Самое серьёзное редактирование, на русском!
Уроки по Serious Editor 3 [40]
Уроки по работе с редактором.
Serious Engine [6]
Описание возможностей всех движков компании Croteam
Разное [26]
Всё что не подошло не под одну из вышеупомянутых категорий.
Serious Sam: Revolution [1]
Материалы по SS: Revolution, серьёзном обновлении классических Крутых Сэмов.
Serious Sam 1.05/1.07 SDK [10]
SDK - набор исходников для Serious Sam: The Second Encounter 1.05/1.07.

Видео

Serious Lяп. Тридцать восьмой выпуск
151 5.0

Выживание в Затопленном Городе: Бесконечные перезапуски! - Aftermath (Serious Sam Map) №5
126 5.0

Обновлённый "Нож брутальным хватом"
199 5.0

Serious Sam Xbox - улучшенная классика
235 5.0

Взрывная поездка в прошлое - Aftermath (Serious Sam Map) №4
155 5.0

Статистика



На сайте: 4
Гостей: 4
Пользователей: 0