Форум

Частицы без тормозов.

05 ноября 2016 15:01
Заметил, что частицы запускаемые в нужный инервал (анимация дыма при включении двигателя) стартуют вместе со сценой, хотя NLA тайм линия в этот момент не воспроизводится.
Приходится ставить принудительный stop timeline при старте сцены.
Естественно галочка Allow NLA включена.

Которая хочу заметить не описана в документации.
Baasis - vk.com/baasis - vk.com/pro_blender
OS: Archlinux x86_64 Linux 4.19.1; DE: Cinnamon; CPU: Intel Core i7-7700K; GPU: GeForce GTX 1050TI; RAM: 32Gb;
Браузеры: FireFox v63, Chromium v70
12 ноября 2016 22:38
Заметил, что частицы запускаемые в нужный инервал (анимация дыма при включении двигателя) стартуют вместе со сценой, хотя NLA тайм линия в этот момент не воспроизводится.
Приходится ставить принудительный stop timeline при старте сцены.
Это не ошибка. NLA всегда запускается при старте сцены, поэтому и частицы у вас сразу срабатывают. Это просто такая логика NLA-сценариев: достаточно настроить в блендере NLA-треки, и в приложении потом все сразу будет играть автоматом, даже управлять им не нужно. Т.е. заранее подготовленная последовательность анимаций на шкале времени.

Можно сделать опцию запускать / не запускать таймлайн при старте, чтобы не путать людей неочевидным поведением - в принципе совсем не сложно, подумаем.

Тем не менее для запуска в произвольный момент больше подойдет обычная анимация, а не NLA. С частиц нужно снять Allow NLA, а запускать через ноду Play Animation / методы apply, play из API, смотря, чем пользуетесь. Тут смысл в том, что не нужно привязываться к NLA-таймлайну, раз мы хотим сами вызывать анимацию в произвольный момент времени.

Которая хочу заметить не описана в документации.
Спасибо, что обнаружили, опишем.
14 ноября 2016 23:27
Ответ на сообщение пользователя Иван Любовников
достаточно настроить в блендере NLA-треки
У меня и так вся цепочка на NLA, но тайм линия стартует не сразу.
У меня сначала интерфейс, кнопочки всякие заполняют экран, через Play Animation.
А только потом после запуска анимационного этапа стартует тайм линия.



"Тем не менее для запуска в произвольный момент больше подойдет обычная анимация, а не NLA.
"запускать через ноду Play Animation"
Тут смысл в том, что не нужно привязываться к NLA-таймлайну, раз мы хотим сами вызывать анимацию в произвольный момент времени."

Не совсем понимаю. Ведь у частиц нет своего экшена, который можно указать в Play Animation.
Или нужно сделать экшен на кол-во частиц от 0 до 150 допустим? Они вроде как сами по себе запускаются.

Сразу поясню. У меня частицы не всегда испускаются, а только 100 кадров в нужный момент, т.е. там задание "запустить компрессор" при нажатии Start, двигатель компрессора работает и дымит, через 100 кадров прекращает и дальше по инструкции он больше никогда не дымит, только если запустить повтор анимации.
Baasis - vk.com/baasis - vk.com/pro_blender
OS: Archlinux x86_64 Linux 4.19.1; DE: Cinnamon; CPU: Intel Core i7-7700K; GPU: GeForce GTX 1050TI; RAM: 32Gb;
Браузеры: FireFox v63, Chromium v70
15 ноября 2016 10:31
У меня и так вся цепочка на NLA, но тайм линия стартует не сразу.
У меня сначала интерфейс, кнопочки всякие заполняют экран, через Play Animation.
А только потом после запуска анимационного этапа стартует тайм линия.
Понятно, ну тогда, да, только stop timeline подойдет.

Не совсем понимаю. Ведь у частиц нет своего экшена, который можно указать в Play Animation.
Есть, нужно указать имя системы частиц: ссылка.
15 ноября 2016 12:17
Ответ на сообщение пользователя Иван Любовников
Есть, нужно указать имя системы частиц: ссылка.
Большое спасибо. Действительно работает название частиц как экшен. А в руководстве я по картинке и не понял сразу как-то, хотя сто раз читал про ноды все.
Baasis - vk.com/baasis - vk.com/pro_blender
OS: Archlinux x86_64 Linux 4.19.1; DE: Cinnamon; CPU: Intel Core i7-7700K; GPU: GeForce GTX 1050TI; RAM: 32Gb;
Браузеры: FireFox v63, Chromium v70
 
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.