Примечание.
Если эмиттер частиц упаковать в NiBSParticleNode , это позволит открыть целый пласт новых возможностей!
Спасибо уважаемому Kurpulio за отмеченную возможность! (03 2020)
Это позволит частицам делать задержку от момент появления, до момент движения объекта.
Т.е. если Игрок скастовал заклинание, оно появится в его текущих координатах и так останется на этом месте некоторое время, а затем "броситься" догонять игрока!
См. ролики в приложении к заметкам:
@_Notes_for_Modmaking\Additional_Files\Tours\@How_To\NiParticle\PIC_only\PIC_ALLATONCE
Примечание.
Что также будет оказывать эффекты на системы частиц.
Примечание.
Позиция анимированных частиц смещается посредством изменения позиции эмиттера, но ни их самих и не их ноды!
Любое редактирование позиции частиц делается через их эмиттер!
Фактически, частицы могут быть в любом месте файла, но появляются они будут всегда от координат их эмиттера.
Эмитер поддерживает ряд контроллеров анимации сообщая оную на свои частицы.
Как вариант, можно поместить частицы и эмиттера в одну ноду.
Это позволит перемещать все вместе сразу.
Т.е. повесив анимацию на такую ноду, можно перемещать частицы без "последствий".
Примечание.
Эмиттер автоматически создается в 3д МАХ, при добавлении системы частиц в сцену.
Но при копировании частиц между ниф файлами, можно потерять оный.
Т.к. как правило, эмиттер находится в отдельной от частиц ноде и при переклейке частиц его можно потерять.
Хотя для этого надо "постараться", но такая "возможность" все же есть.
Примечание.
Частицы отказываются копироваться между НИФами, если не находят Имя своего эмиттера!
т.е. сперва надо скопировать эмиттер, а уже потом - Частицы.
Можно удалить из файла (светильника например) все шейпы и лишние ноды, оставив лишь Частицы и их Эмитер.
Установить их координаты в 0.0.0, частиц и эмиттера.
Затем, копировать корневую ноду и уже в таком виде копировать между ниф файлами.
Если в сцене, по каким-то причинам, нет эмиттера, его можно создать из любой ноды.
Прописав оную в слоте Emitter контроллера частиц.
Примечание.
Если контроллер невидимости повешен на ноду, в которой находятся сами частицы, он будет «выключать» их сразу и целиком.
Полное исчезновение частиц в мгновенье.
Но, если контроллер невидимости размещен на Эмиттере... Частицы не спеша испарятся.
Т.е. Цикл их анимации будет проигран до конца.
Это хорошо использовать при создании выстрелов и взрывов.
Побочный эффект - если это использовано в файлах существ, частицы могут зависнуть после кончины существа не успев проиграть всей своей анимации.
Т.к. при кончине существа в фрейме "Death: Stop" останавливается любая анимация.
Либо увеличивая время анимации кончины в файле.
Т.е. поставив Death: Stop сильно дальше фактического завершения анимаций существа.
Это повысит шансы, что ГГ вновь посмотрит на существо, уже лежащее в прахе и, частицы корректно завершат свою анимацию.
Хотя обновленные данные показывают, что зависание связано не со временем, а с тем, что частицы замирают за спиной камеры. Наличие неактивного контроллера невидимости, или кейфрейм контроллера, должно сообщать игре просчитывать частицы и за спиной игрока, давая им возможность плавно исчезнуть.
Примечание.
Скрытый Эмитер - скрывает свою систему частиц.
У одного эмиттера, может быть любое кол-во систем частиц!
Если координаты частиц не находятся в координатах эмиттера, они будут не корректно отображаться в нифскопе!
Т.е. при открытии файла они будут находиться в своих координатах.
Следует нажать PLAY для обновления их позиции.
Впрочем, в игре все будет нормально.
Однако, рекомендуется, совмещать координаты частиц с координатами их Эмиттера!
Так намного удобнее работать с этими объектами.
Также, если частицы появляются рядом с игроком в игре через действие скриптов, они возникнут из своих исходных координат и лишь затем подтянутся к эмиттеру, откуда и будут работать в дальнейшем.
Примечание.
Обращайте внимание, что для правильной анимации смещения частиц с флагом Trailer = 1 требуется размещение частиц, или эмиттера в другой ноде.
Т.е. эмиттер и его частицы НЕ ДОЛЖНЫ находиться в одной ноде.
Особенно это касается существ.
См. ванильных Спящих, или костяных лордов. Где частицы лежат в корне сцены, а эмиттер прикреплен к одной из костей скелета.
Возможны и обратные варианты.
Эмиттер находится в корне сцены, а частицы в одной из анимированных групп.
Таким образом можно получать дополнительные анимации.
Например:
- эмиттер в корне сцены, без анимации.
- частицы в Анимированной ноде, также имеют в своем составе Колайдер (который не может быть анимирован сам).
- колайдер находится на достаточном удалении от точки появления частиц.
- частицы имеют постоянную анимацию без пауз, т.е. не пропадают из кадра.
- частицы двигаются в сцене за счет анимации ноды в состав которой входят.
В результате:
- Частицы фактически реагируют на приближение к эмиттеру меняя свое поведение на удаление от оного!
Как можно видеть, разница в позиция ноды частиц (ака самих частиц) и их эмиттера оказывают СУЩЕСТВЕННОЕ воздействие на их анимации.
Думается, таким образом можно создавать эффект "сварочного аппарата" который имеет острое пламя на удалении от поверхности и разбивается на искры при приближении к оной.
Еще вариант:
- Эмиттер содержит анимацию некоего движения.
- Эмиттер может быть анимированной нодой с 42 флагом, это не помешает работе частиц.
- Нода с частицами не содержит никакой анимации.
Поведение частиц в такой системе будет отличной от первого случая.
- вероятно происходит ошибка создания эмиттера если он был назван NoCollision.
Т.е. если в качестве эмиттера указать частицам некий объект так названный.
Частицы экспортируются, но вместо эмиттера будет некая ерунда "12134454 invalid".
Нифскоп будет ругаться на это дело, игра и редактор, вероятно улетят в краш.
Примечание.
Нифскоп имеет такое описание про параметр VELOCITY применительно к эмиттеру частиц:
Controls the way the a particle mesh emitter determines the starting speed and direction of the particles that are emitted.
Возможно это относится только к старшим играм серии.
Будет ли влиять этот параметр на частицы в МВ - вопрос открытый.
Вероятно, следует проверять NiBSPArrayController с флагом 24, т.к. он умеет использовать поверхности.
Примечание от Greatness7.
* Note for creatures and flag 128:
In the vanilla engine, particles that don't ignore parent animation (not 32) aren't displayed for creatures if the particles node doesn't have the flag 128,
When a creature is created ingame by a script (as opposed to a creature or lev.list placed in the CS), particles that do ignore parent animation (32) and don't have flag 128 aren't displayed until the game is saved and loaded or, in interiors, until the player looks towards coordinates 0,0,0 where the particles are placed.
|
|
Пример такого файла.
С разнесенными частицами и эмиттером.
Анимация перемещения ноды с частицами сделана через NiPathController
|
Просто эмиттер в сцене с частицами которые стартуют из его координат.
|