Использование NLA
12 февраля 2015 12:53
Добрый день!
Подскажите, пожалуйста, каким образом можно программно запускать NLA tracks в загруженной сцене.
В документации упоминаний модуля nla не нашел, хотя в исходниках есть соответствующий модуль. Или необходимо вручную делать сборку проекта, чтобы включить данный модуль? Сейчас при загрузке возникает сообщение Uncaught Error: Module "nla" not found .
Подскажите, пожалуйста, каким образом можно программно запускать NLA tracks в загруженной сцене.
В документации упоминаний модуля nla не нашел, хотя в исходниках есть соответствующий модуль. Или необходимо вручную делать сборку проекта, чтобы включить данный модуль? Сейчас при загрузке возникает сообщение Uncaught Error: Module "nla" not found .
12 февраля 2015 13:47
Ответ на сообщение пользователя parshin.pn
Добрый день!
Подскажите, пожалуйста, каким образом можно программно запускать NLA tracks в загруженной сцене.
В документации упоминаний модуля nla не нашел, хотя в исходниках есть соответствующий модуль. Или необходимо вручную делать сборку проекта, чтобы включить данный модуль? Сейчас при загрузке возникает сообщение Uncaught Error: Module "nla" not found .
Добрый день!
Действительно, у модуля NLA нет внешних API. Но на практике без них можно обойтись. Вы можете запустить NLA анимацию точно так же, как вы это сделали бы с обычной анимацией:
var obj = m_scenes.get_object_by_name("Cube");
m_anim.apply(obj, "Имя анимации в NLA треке");
m_anim.play(obj);
24 апреля 2015 13:11
Здравствуйте!
Вопрос:
поддерживает ли B4W NLA нескольких объектов?
К примеру, когда делаю анимацию " в линейку", всё играет.
Когда у меня несколько объектов и на каждом своя НЛА, то не получилось воспроизведение по маркерам.
Или этот вопрос только программно решается?
Вопрос:
поддерживает ли B4W NLA нескольких объектов?
К примеру, когда делаю анимацию " в линейку", всё играет.
Когда у меня несколько объектов и на каждом своя НЛА, то не получилось воспроизведение по маркерам.
Или этот вопрос только программно решается?
Коплю деньги на коммерческий B4W.
24 апреля 2015 13:57
Ответ на сообщение пользователя Йеджи ЗаборовскиВообще то если каждый пересекающийся НЛА стрип на разных объектах, то всё должно работать. Не поддерживается только смешивание (наложение одного над другим) НЛА стрипов на одном объекте, собственно то для чего в основном и нужно НЛА . Но думаю когда ни будь допилим.
Здравствуйте!
Вопрос:
поддерживает ли B4W NLA нескольких объектов?
К примеру, когда делаю анимацию " в линейку", всё играет.
Когда у меня несколько объектов и на каждом своя НЛА, то не получилось воспроизведение по маркерам.
Или этот вопрос только программно решается?
Blend4Web и всё такое. Тридешу тридэ, моделю модели.
24 апреля 2015 14:06
поддерживает ли B4W NLA нескольких объектов?
В этой теме подробно рассматривались вопросы, касающиеся NLA-скриптов
02 июня 2015 17:18
Действительно, у модуля NLA нет внешних API. Но на практике без них можно обойтись. Вы можете запустить NLA анимацию точно так же, как вы это сделали бы с обычной анимацией:
var obj = m_scenes.get_object_by_name("Cube");
m_anim.apply(obj, "Имя анимации в NLA треке");
m_anim.play(obj);
Программист Blend4Web
А вот это как реализовать?
1. Генерированный анкор онклик- функция "play_animation()"
2. Есть последовательность слотов:
1слот - играет анимацию покоя
2слот - джамп на 1слот
3слот- играет анимацию трансформации
4слот - играет анимацию покоя2
5слот- джамп на 4слот
6слот-играет трансформацию2
7слот- джамп на 1слот
3. Я нажимаю на анкор (html элемент), запускаю функцию play_animation().
4. Если состояние 0, то прыгнуть на 3слот
5. Если состояние 1, то прыгнуть на 6слот
6. Сама анимация циклик НЛА.
Пытался реализовать кодом:
var m_scenes = b4w.require("scenes");
var m_anim = b4w.require("animation");
var animplay = m_scenes.get_object_by_name("Armature");
m_anim.apply(animplay, "ArmatureAction");
m_anim.play(animplay);
m_anim.play(animplay, "тут вообще мне не нужно)))", 6)
Для запуска программной анимации нла слоты должны быть отключены?
Коплю деньги на коммерческий B4W.
03 июня 2015 14:59
Для запуска программной анимации нла слоты должны быть отключены?Вы совершенно верно определили. Нелинейная анимация переопределяет обычную анимацию. Внесём пояснение в документацию.
[EDIT]
Немного дополню. Имеется в виду, что если в данный момент на объекте проигрывается NLA-анимация изменяющая те же параметры, что и обычная анимация, то именно она будет иметь решающее значение.
03 июня 2015 16:18
03 июня 2015 17:32
Слоты не получается запустить путем нажатия на HTML элемент, потому пробую программно. ВОт для этих целей СЛОТЫ удалить?Конечно, лучше бы разобраться, почему не получается запустить анимацию через NLA-скрипт. Возможно, нашли бы какой-то баг.
Если делаете всё программно, то лучше отключить слоты.