Итак, Particle Emitter 1 – это такой вид источников, который позволяет прикрепить к модели еще одну дополнительную (внешнюю) модель. Также, по словам Алексея и по допустимым параметрам в W3ME, можно использовать в качестве частиц текстуру, но у меня не вышло (да и зачем это надо, если есть Particle Emitter 2?).
Самая гадость состоит в том, что W3ME вообще никак не отображает этот вид источников.
Итак, я решил прикрепить к модели Счастливой монетки (Objects\InventoryItems\PotofGold\PotofGold.mdx) эффект заклинания Трансмутация (Abilities\Spells\Other\Transmute\PileofGold.mdl). Приступим.
В MPQ-браузере W3ME находим Счастливую монетку (путь выше) и вытаскиваем её из архива. Открываем её в том же W3ME.
Заходим в Редактор узлов. Щелкаем по свободному месту правой кнопкой мыши (чтобы источник создался ни к чему не прикрепленный), потом «Создать источник частиц». Создастся эмиттер с именем «UNNAMED» и зеленой иконкой со стрелкой. Теперь можно переименовать его (хотя это и не обязательно).
Координаты не меняем (т.к. он должен возникать в точке (0, 0, 0), а она стоит по умолчанию).
Координаты не меняем (т.к. он должен возникать в точке (0, 0, 0), а она стоит по умолчанию).
Делаем двойной щелчок по источнику и…
- 1.1) частота – количество «вспышек» в единицу времени (т.е. в секунду, хотя это не столь важно);
- 1.2) появление – время (в секундах), которое будет отображаться первая частица;
- 1.3) начальная скорость – параметр, от которого зависит расстояние, на которое будут максимально удаляться частицы от точки возникновения (позволяет растянуть эффект в сторону его распространения); если поставить 0, модель не деформируется;
- 1.4) гравитация – думаю, и так понятно;
- 1.5) долгота/широта – размер квадрата, на площади которого будут создаваться частицы;
- 1.6) видимость – список кадров, в которые видимость источника изменяется (если не нажимать «Анимирована» и прописать 1, источник будет постоянно виден);
- 1.7) дополнительно – в «Имя файла» вписываем… да-да, путь к модели или текстуре (как я понял, в формате tga, но у меня не получилось довести до работоспособности такой эмиттер…). Если файлом является модель, ставим галку на «Излучатель использует MDL», в противном случае на «Излучатель использует TGA».
Теперь, используя скрин 1, настраиваем параметры, в «Видимость» пишем следующее:
Т.е. источник будет появляться, когда юнит умирает (в данном случае, когда предмет подобрали).333: 0
7667: 0
9500: 1
9533: 0
16667: 0
20333: 0
Теперь подробнее
Источник воспроизводится даже тогда, когда он невидим, поэтому желательно рассчитать частоту излучения так, чтобы очередная «вспышка» попала на нужный кадр.
Анимация Death в этой модели начинается на 9500-ом кадре, а кончается на 16667-ом, но если источник будет виден во время всей анимации, вспышки будут многократно повторяться, а нужно (ну, мне нужно), чтобы он появился только один раз.
Анимация Death в этой модели начинается на 9500-ом кадре, а кончается на 16667-ом, но если источник будет виден во время всей анимации, вспышки будут многократно повторяться, а нужно (ну, мне нужно), чтобы он появился только один раз.
Тут приходится работать чисто методом подбора – постоянно импортировать новую версию модели в карту, чтобы узнать, как это выглядит. Муторно, но кому сейчас легко?..
Итак, я определил, что при частоте в 45 одна вспышка происходит за 33 кадра, поэтому я делаю видимым источник на кадре №9500 (начало анимации), а скрываю на кадре №9533 (по прошествии 33-х кадров).
Хотелось бы заметить, что длина отрезка видимости обратно пропорциональна частоте излучения, и если увеличить частоту и уменьшить продолжительность видимости в одинаковое количество раз, ничего не изменится. Т.е. параметры, написанные на скрине и такие, как
частота=27.5 и
видимость
частота=15 и
видимость
частота=27.5 и
видимость
и333: 0
7667: 0
9500: 1
9566: 0
16667: 0
20333: 0
частота=15 и
видимость
дадут один результат (только с отрезком в 18 кадров и частотой в 90 такое не сработало).333: 0
7667: 0
9500: 1
9599: 0
16667: 0
20333: 0
На счет «Появления»: распространяется этот параметр только на первую создаваемую частицу. Если поставить слишком маленькое значение, анимация прикрепленной модели проиграется не полностью (но вдруг вам именно это и надо?); если же необходимо, чтобы анимация проигралась полностью, но лень высчитывать время, ставьте примерно 3-5 – не ошибетесь (я надеюсь).
Немного о EventObject'ах…
Событийные объекты – это какие-то события (звуки, модели типа брызг крови), происходящие в определенное время. Так, например, в модели нашей монетки есть один объект, обозначенный иконкой в виде скрепки. Замечали, наверное, что при подбирании Счастливой монетки (со стандартной моделью) в воздух вылетают несколько золотых. Именно через этот эвент данная особенность и реализована. Теперь его спокойно можно удалить (тем более за новым эффектом его и не видно…). Удаляйте.
Вы слышали, что при кастовании спелла Трансмутация слышны звуки бренчащих монет? Вот именно их я хочу добавить в свою модель.
Теперь нажимайте правой кнопкой по пустому месту и нажимайте «Создать событийный объект» (можно было и старый отредактировать, но давайте уж с нуля делать). Так, координаты возникновения можно даже не трогать – это мало на что влияет. Двойной щелчок левой кнопкой откроет окошко.
Теперь нажимайте правой кнопкой по пустому месту и нажимайте «Создать событийный объект» (можно было и старый отредактировать, но давайте уж с нуля делать). Так, координаты возникновения можно даже не трогать – это мало на что влияет. Двойной щелчок левой кнопкой откроет окошко.
- 1.2) события – сюда заносятся номера кадров, в которые событие сработает;
- 2.2) событийные данные – что именно произойдет:
- 2.2.1) FootPrint – следы от движения модели (будь то следы от ног, колес и пр.)
- 2.2.2) BloodSplat – то, чем модели при смерти загаживают почву (лужи крови, следы от шипов из земли и пр.)
- 2.2.3) UberSplat – следа от взрыва зданий, закопавшихся юнитов и пр.
- 2.2.4) Sound – это я даже не знаю… Может… звуки? =)
- 2.2.5) SpawnObject – брызги крови, а также анимации разрушения зданий
В поле «Данные» выбирается нужная модель.
Поле под ней позволяет не рыться в списке и сразу ввести четырехбуквенный идентификатор, если вы его, конечно, знаете…
- 2.3) идентификатор – просто любая буква, разделяющая параметры в названии
- 2.4) дополнительно – сюда вписывается ID глобальной последовательности (Global Sequence) – такой анимации, которая повторяется независимо от движения всех костей (может, потом расскажу подробнее).
Чтобы узнать, какую из непонятных комбинаций буковок выбрать, откройте в W3ME модель, содержащую нужные вам эвенты, и посмотрите, какая комбинация стоит там.
Итак, открываем модель Abilities\Spells\Other\Transmute\PileofGold.mdl (находится в War3Patch.mpq). Она имеет 2 эвента, оба из них – звуки. Какой выбрать? Методом научного тыка я понял, что нужен второй. Щелкните по нему 2 раза. Видите, в поле «Данные» стоит идентификатор AAMS, а в поле ниже – STMI? Почему? Просто в списке этого звука нет (всё от нас Близзы спрятать хотят!), и пришлось писать его идентификатор вручную.
Делаем в нашей модели такой же эвент, но в «Событиях» пишем не 0, а 9500 (см. скрин 2).