Создание партиклов (продолжение)

Материал из Mod Wiki.

Версия от 11:17, 13 января 2011; Galil (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск

Содержание

Создание партиклов (часть 2)

Пролог

Начальные принципы по созданию партилов можно прочитать в статье Создание партиклов. Я же решил дополнить своими знаниями по партиклам, так как не все после длительного тыка по кнопкам понимают - что, где и как...

Описание некоторых простых параметров партикла

Для порядочности разделю партикл на два значения:

1)Партикл - это единая система, которая являет собой спецэффект

и

2)Текстурка - это элемент, из которого состоит партикл


Max particles - максимальное кол-во текстурок, которые могут проицироваться на экране.

Time limit - время, в течении которого проицируется весь партикл.

Sprite:

  Texture - текстура, которая используется партиклом.
  Shader - шейдер, который используется партиклом.
  Frame - это используется в основном для анимированных текстур(например, огонь для костров) 
    Random Init - рандомный выбор кадра из доступных.
    Count - количество кадров, которое будет использоваться из текстуры.
    Size U - деление текстуры по горизонтали для создания кадров.
    Size V - деление текстуры по вертикали для создания кадров.
    Как расчитать деление.
    У вас есть текстура с 4 ресунками по горизонтали и 4 по вертикали.
    Делим 1 на этого число(в данном случае 4) и полученный результат вбиваем в поля.
    Вписывать можно только дробные значения.
    Если у вас разное количество кадров по вертикали и горизонтали, то для каждого значения Size считаем отдельно.

Movement - эта сборка параметров влияет на:

1)то, куда будет направлена лицевая сторона партикла(Align to path);

2)рандомное изменение масштаба(Velocity Scale);

3)то, как партикл будет взаимодействовать с окружающим миром(Collision).

Actions - это самая главная часть характеристик партикла:

  Rate - скорость создания текстурок(чем больше значение, тем быстрее они появляются).
  Domain - это область, где будут появляться текстурки.
  Velocity - это напраление движения текстурок.
  Rotation - это сторона, куда будет смотреть текстурка(возможно я ошибаюсь).
  Size - размер текстурок.
  Color - цвет текстурок и параметр, отвечающий за альфа-канал текстур.

Описание некоторых функций, которые можно задать для партикла

Возможны неточности в описании некоторых функций.

Avoid - сбивает текстуры со своего первоначального направления.

Bounce - создает плоскость, при соприкосновении с которой партиклы отлитают назад.

Damping - симуляция воздушного пространства с помощью медленно перемещающихся текстурок.

Explosion - создание взрывающегося партикла.

Follow - этот параметр заставляет текстурки перемещаться друг за другом.

Gravitate - создание гравитации между текстурками в группе.

Gravity - создание гравитации для текстурок в определенное направление.

KillOld - удаление текстурок через определенное время.

Match Velocity - создает разницу в скорости (Velocity) перемещения текстурок внутри партикла.

Movement - без этого парметра не будет работать функции требующие силу движения.

Orbit Line - создание гравитационной линии, вокруг которой будут перемещаться текстурки.

Orbit point - создание гравитационной точки, вокруг которой будут перемещаться текстурки.

RandomAccel - рандомное направление движения тектурок.

RandomDisplace - заставлеят текстурки в начале появляться в одном месте, а только потом использовать параметр Domain.

RandomVelocity - заставлеят текстурки(все те, которые успевают появляться за один момент) перемещаться с заданой скоростью. Но после каждого нового появления текстурок - их скорость меняется.

Restore - создает время, после окончания которого партикл переходит на следующую стадию или группу.

Scatter - насильный разброс текстурок из области их создания.

Sink - создать область, в которой будут удаляться все текстурки.

Sink(Velocity) - создать направление, в котором будут удаляться все текстурки.

Source - добавить новую область и параметры создания текстурок.

SpeedLimit - ограничить текстурки в скорости перемещения.

TargetColor - сменить цвет и альфа-канал после появления текстурок.

TargetRotation - сменить скорость раворота текстурки вокруг своего центра.

TargetSize - конечный размер текстурки после ее появления.

TargetVelocity - конечная скорость и траектория перемещения партиклов.

Turbulence - турбуленция текстурок.

Vortex - создать эмуляцию водоворота в заданой точке.

Внимание!!! Avoid и Bounce работают только при выборе у них параметра Disc.

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

Описание некоторых значений функций

Все функции имеют какие-либо параметры для регулирования воздействия на текстурки.

Начнем с самого простого - с галочек.

Их мало, но я все таки напишу кое что о них.

Enabled - ну тут можно ограничиться простым переводом. Проще говоря это вкл\выкл функции.

Draw - здесь тоже все просто. Отображение в редакторе функции.

Примечание: не все функции могут отображаться в СДК.

Allow rotate - честно говоря я недопонял что это и с чем едят. Но из перевода выясняеться - возможность разворота.

Kill less then - пока эта галочка для меня загадка ))

Есть еще возможность менять названия функций. Честно говоря незнаю зачем это сделали.


Приступим к числовым значениям.

Age limit - используется в функции KillOld. Это значение задает длительность жизни текстурок.

Scale - на первый взгляд вроде как масштаб. Да, но это в другом смысле. Этот параметр задает силу самой функции. При значении, меньшим единицы данный параметр отрицательно воздействует на функцию, при большим единицы - положительно(Например если в TargetSize задать дробные значения, то текстурки будут изменять размер очень медленно).

Direction - ну тут все ясно. Направление.

Center - это расположение центра воздействия функции.

Axis - тут надо вспоминать геометрию. Вроде как направляющая.

Magnitude - сила воздействия функции на текстурки. Чем больше значение, тем сильнее воздействие.

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

Max radius - ну тут тоже все просто: радиус воздействия.

V Low и V High - неуверен, но думаю это тоже как-то связано с силой воздействия.

Position - тоже самое что и Direction, но с возможностью использовать геометрические данные фигур.

Friction - сила отталкивания текстурок от плоскости. При отрицательных значениях - отталкивает наружу, при положительных - отталкивает внутрь(не вертикально, а горизонтально по отношению к плоскости).

Resilence - тоже, что и Friction, но используется вертикальное воздействие. При положительном значении - скидывает вниз, при отрицательном - отталкивает вверх. Все относительно положения плоскости.

Cutoff - к сожалению я так и не смог понять смысл данного значения.

Age - длительность воздействия функции.

Accelerate - это воздействие на текстурки за счет выбора геометрических данных.

Standart Dev - пока незнаю...


Геометрические фигуры, которые можно задать в PE

Point - точка.

Line - линия.

Triangle - треугольник.

Plane - плоскость.

Box - куб.

Sphere - сфера.

Cylinder - цилиндр.

Cone - конус.

Blob - в геометрии не силен, поэтому решил сделать чертежик.

             y
             |     /z
             |    /
             |   /
             |  /
             | /
             |/
 - - - - - -|- - - - - - x
            /|
           / |
          /  |
         /   |
        /    |

Вот так примерно выглядит эта штука в редакторе.

Disc - диск.

Rectangle - прямоугольник.


Позже возможно я дополню эту статью еще чем-нибудь...

Автор

Статья создана: Galil

Личные инструменты