Effect

Материал из wiki.appsalutecreator.com
Перейти к: навигация, поиск

Effect - объект редактора, предназначенный для создания различных визуальных эффектов, которые визуализируется (проявляются) в зависимости от частоты кликов пользователя по заданной области проявления эффекта.
Обьект Effect расположен в Main objects
Важное замечание!
Эффект БЛЮР и ДЫМ не могут быть вызваны одним экземляром класса Effect

Эффект БЛЮР

Эффект блюр позволяет создавать дребезжание обьекта. Например, развдоение обьекта.

Механизм работы эффекта БЛЮР

Ситуация: Пользователю необходимо отключить звенящий будильник. Пользователь на экране видит дребезжащий будильник. По клику на будильник дребезжание будильника прекращается.
Порядок действий:

  • На сцене размещаем машину состояний с графическим ресурсом будильника. Назовем ее БУД. Обработка клика на машину состояний стандартная.
  • На сцене размещаем объект Effect. Положение объекта Effect должно полностью совпадать с положением машины состояний БУД!
  • Свойству Объект эффекта БЛЮР устанавливаем значение машину состояний БУД. Значения других свойств эффекта БЛЮР оставляем стандартными.

Параметры эффекта Блюр

Свойства объекта Блюр

  • Объект (obj) - Объект, к которому будет применен эффект блюр.
  • Продолжительность (tm) - продолжительность эффекта. По умолчанию 4000.
  • Отклонение (dev)-. Чем больше отклонение, тем больше "отскакивает" в разные стороны от центра объекта По умолчанию 10. При задании значений больше 90 объект "скачет" по диагонали.
  • Скорость (vel) -Скорость "дрожания" объекта. По умолчанию 1000.
  • Прозрачность (al) - По умолчанию 0.5.

Состояния

  • beg - включить проявление Блюра
  • end - остановить проявление Блюра

Замечание! По умолчанию Блюр находится в состоянии end

Эффект ДЫМ

Физическое объяснение работы эффекта ДЫМ

Область проявления эффекта(ОПФ) — строго ограничена. (В данной версии редактора область только прямоугольная).ОПФ является непрерывной поверхностью и находится в ожидании клика пользователя.

При одинарном клике внутри ОПФ проявляется объект с набором параметров, установленными в свойствах объекта Effect, и параметров, определяемых частотой, силой кликов и координатами клика внутри ОПФ. Далее этот объект будем называть излучателем.
Распространение 1.JPG

При одинарном клике по ОПФ , излучатель направляет во все направления частицы при этом большая часть частиц распространяется вдоль отрицательной оси У (вверх). Чем дальше частицы удаляются от центра излучателя , тем они становятся светлее. На рисунке отображена картинка, которую увидит игрок.
Распространение 2.JPG

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

При наличии на экране 2 и более излучателей, удаленных друг от друга на достаточно большом расстоянии внутри ОПФ, частицы излучателя начинают взаимодействовать друг с другом.
Пусть в области ОПФ есть 4 излучателя. На схеме цветными кружками отображены излучатели, и цветными полями отображены направления распространения частиц излучателя. Пусть необходимо определить яркость частицы в точке Z. Не вдаваясь в математические вычисления, яркость частицы в точке Z будет равна средневзвешенному значению яркости частиц, расположенных вблизи точки Z. Все частицы излучателя влияют на яркость соседних.

Точка внутри ОПФ.JPG

Механизм работы эффекта ДЫМ

При клике по заданной области на экране проявляется визуальный эффект, который распространяется в границах заданной области

  • в зависимости от «силы» клика проявляется эффект
  • в зависимости от координаты точки клика внутри ОПФ эффект будет распространяться по всем направлениям
  • при одинарном клике эффект движется направленно верх.
  • при увеличении частоты кликов эффект начинает двигаться направленно вверх при этом высота эффекта увеличивается
  • при достижения верхней / нижней границы заданной области эффект может начать двигаться вдоль нее
  • при достижении правой/левой границы эффект может начать двигаться внутрь заданной области
  • при нажатии на кнопку мыши и начале движения в любую сторону внутри области эффект начнет вести себя как ручка по бумаге
  • при резком отведении нажатой мышки к границе ОПФ в области , находящейся близко к границе ОПФ, создается несколько излучателей/
Граница ОПФ.JPG

Взаимодействие с картинками эффекта ДЫМ

Пусть Effect лежит поверх картинки.

  • После рассеивания всех частиц излучателей на картинке проявится граница ОПФ. Для устранения этого эффекта рекомендуется установить прозрачность объекту Effect.
  • При необходимости добавления эффекта в строго ограниченные не прямоугольной области, например, создание эффекта воды в озере, необходимо области, на которых не должен проявляться эффект, "закрыть" фоном
  • По умолчанию частица эффекта белого цвета. Есть возможность подгружать частицы любого размера.

Параметры эффекта ДЫМ

Внимание! Параметры обьекта будут уточняться!

Свойства объекта Дым

Название параметра на английском Названия параметра на русском Название параметра в xml Характеристика параметра Значение по умолчанию
частица smPart Ресурс частицы Цвет частицы - белый
w Ширина распространения эффекта w Значения до 40. Увеличивает ширину излучения. Чем меньше значения, тем шире 70
h Высота распространения эффекта h До 200. Чем больше значение, тем выше 70
Velocity diffusion Скорость диффузии Vd Значение до 25. Больше скорость , больше температура 0
Diffusion itterations Количество итераций диффузии di До 400 0
Pressure diffusion Давление диффузии pd Больше давление, больше частиц. Рекомендуется ставить до 10 0
Ink diffusion Плотность газа id Плотность до 800 0
Velocity friction a Квадратичное замедление fva Замедление распространения частиц. 0
Velocity friction b Линейное замедление fvb Замедление распространения частиц. 0
Velocity friction c Изменение скорости на заданную величину fvc Замедление распространения частиц. 0
Vorticity Завихренность vort Чем больше значение, тем больше вихрей 0
Pressure acc Давление в точке pacc Создаются маленькие излучатели вокруг излучателя. Рекомендуется ставить значение до 50 2
ink heat плотность тепла ??? ih Вертикально вниз падают частицы 0
Heat force ???? hf Вертикальное падение частиц 0.1
Heat friction a Квадратичное трение hfa 0.5
Heat friction b Линейное трение Б hfa 0.2
Heat friction с Изменение скорости на заданную величину hfa 0.01
Velocity advection Скорость адвекции va Скорость распространения 150
Pressure advection Давление адвекци padv Параметр, влияющий на величину давления частиц 150
Heat advection Температура адвекции ha Моделируемая температура, при которой распространяются частицы 150


Важное замечание

  • Параметры Velocity friction a, Velocity friction b, Velocity friction c,Heat friction a,Heat friction b,Heat friction c позволяют управлять процессом распространения частиц по ОПФ. Хотя эффекты, создаваемые перечисленными параметрами можно получить с использованием других.
  • Одновременное использование параметров групп Velocity friction или Heat friction приведет к замедлению распространению частиц. Рекомендуется подбирать значения параметров очень аккуратно при условии, что параметр А >B>C.

Состояния эффекта ДЫМ

В данной версии редактора состояний нет.

Параметры, записываемые в options.xml

В данной версии редактора такие параметры отсутствуют


Эффект AMBIENT WITH LIGHT

Параметры :

  • awl - Тип эффекта.
  • tag - Номер эффекта.

Состояния

  • awl_beg - Активировать эффект AmbientWithLight.
  • awl_run - Эффект AmbientWithLight работает.
  • awl_upd - Обновить параметры эффекта AmbientWithLight.
  • awl_end - Деактивировать эффект AmbientWithLight.

Замечание! По умолчанию AmbientWithLight находится в состоянии awl_end.

Примеры подборки коэффициентов:

Стартовая картинка:

Awl start.png

1) Картинка перекрашивается в темно-синий цвет. Эффект ночи.
Awl blue.png

r="0.1, 0.0, 0.0, 0.0"
g="0.0, 0.1, 0.0, 0.0"
b="0.0, 0.0, 0.5, 0.0"




2) Цветной негатив.
Awl c neg.png

r="-1.0, 0.0, 0.0, 1.0"
g="0.0, -1.0, 0.0, 1.0"
b="0.0, 0.0, -1.0, 1.0"




3) Черно-белая сепия.
Awl dw.png

r="1.0, 0.0, 0.0, 0.0"
g="1.0, 0.0, 0.0, 0.0"
b="1.0, 0.0, 0.0, 0.0"




4) Черно-белый негатив.
Awl dw neg.png

r="-1.0, 0.0, 0.0, 1.0"
g="-1.0, 0.0, 0.0, 1.0"
b="-1.0, 0.0, 0.0, 1.0"




Пример подключения эффекта AmbientWithLight:

Effect awl.png

Пример использования обьекта Effect

Примеры эффектов создаваемых с использованием обьекта Effect расположены по ссылке. В проекте 28 экранов, на каждом из которых расположен один пример эффекта с описанием применяемых параметров.
Пример экрана с эффектом.JPG

Перекрашивание графики

Для начала - перекрашиваемая графика должна быть максимально осветлённая ( чтобы точнее перекрасить цвет, чем темнее графика - тех меньше будет влиять перекрашивание).

Имеем графику:

Bg seryj copy.png

Далее, производим махинации - узнаём при помощи пипетки ( Photoshop ) цвет эталлоного пикселя ( один и тот же пиксель, на нужной и на осветлённой графиках). Заносим полученные значения RGB каналов в таблицу, и для каждого канала узнаём процент цвета ( делим нужный цвет на эталонный).

Colors.ods - LibreOffice Calc.jpg


Полученные % используем в объекте effect:

Splitmanager setup awl 6.jpg

Далее всё по обычному - указываем тип эффекта awl, указываем номер эффекта и передаём сост. "awl_beg", результат: 66c7052ca8.jpg

Пример

Download