Forum

User posts Alexander Romanov
27 November 2017 14:33
Здравствуйте!

Переключатель работает нормально, но часть нод Call Function, при этом, в консоли подсвечены ошибкой "Recursion is not allowed!". Насколько критична эта ошибка и можно ли от нее избавиться?
P.S. Ошибка "Recursion is not allowed!" пропала после установки исправленной версии движка. Спасибо разработчиками!
Да, исправили эту ошибку в версии 17.10.1

1. Почему некоторые линии, связывающие ноды в дереве закрашены красным цветом?
В данный момент так работают все ноды Blender. Если какая-то линия подсвечена красным, значит в дереве присутствует цикл. Для логических нод Blend4Web иметь циклы - это нормально. Просто не обращайте внимание, ну а если обратили, значит это всего лишь сигнал о наличии циклической связи нод.


2. Как сделать линии, , связывающие ноды в дереве, прямыми?

User Preferences > Themes > Node Editor
Поставьте 'Noodle Curving' в 0
Alexander (Blend4Web Team)
twitter
24 November 2017 18:08
SharedArrayBuffer - очень хорошая штука. Доберемся и до нее .
Alexander (Blend4Web Team)
twitter
24 November 2017 17:09
Текущее сообщение - случаный спам
Alexander (Blend4Web Team)
twitter
24 November 2017 16:55
С тенями дело обстоит не совсем так, b4w при заблюревании теней использует рандомное чтение из текстуры, убивая при этом кэш. А Three.js нет. Картинка выглядит похуже, но работает на порядок быстрее. Да и оптимизации по батчингу вынесены на совесть программиста, что не является таким уж плохим решением. Three.js игрушка для тех, кто разбирается.

Насчет теней мы рассморим ваши замечания. Они действительно достаточно тяжелые. А вот батчинг не совсем тривиальная вещь. Считаю что эта фича полезная и должна работать в автоматическом режиме, хотя на данный момент, как показывает практика, программисты WebGL не рискуют засовывать много геометрии в браузер.


Заточенность под Blender только тормозит развитие проекта, имхо. Разве что Blender не спонсирует этот проект, но только они сами бомжуют
Сейчас самой приоритетной задачей для нашей команды является создание удобной модульной структуры и общей гибкости движка. В том числе расширение под иные пайплайны в первую очередь связанные с моделью PBR. В перспективе поддержка glTF и других форматов.


soft8soft делает Three.js "для всех". чтобы домохозяйка смогла потыкать и получить картинку. согласен, что сейчас они притянули оттуда вещи, которые нужно было доработать, а не доработали. И там такого как говна за баней
В демке с кольцами там GLные вызовы зашкаливают как счётчик Гейгера в Чернобыле. У них на демке со спинером камера была не ограничена и можно было за енвайромент вылететь, сейчас они ограничили камеру. Дефолтный бэкграунд на Three.js не выдерживает никакой критики, его надо самому пилить. Но у Three.js возможностей больше чем у b4w. Небольшая магия рук делает из него конфетку, но только надо его затачивать вручную под каждое конкретное приложение и это неплохо

Да, вы все правильно говорите, threejs имеет более удобные интерфейсы для динамической геометрии, его сообщество больше итд. Но это сообщество состоит из программистов и threejs сделан для программистов. Лично я вижу путь расширения и конкуренции через создание более удобного API, расширяемого пользовательскими модулями. А для художников - создать более удобные средства настройки материалов.

И вишенка на торте: можно такое сделать на blend4web ?
http://www.adultswim.com/etcetera/elastic-man/

Теоретически можно изменять геометрию напрямую, используя алгоритмы симуляции частиц, например Verlet с законом отталкивания частиц. Но работать будет на CPU. И это получится что-то больше самописное, чем B4W. Движок Bullet умеет симулировать ткань, но мы пока что этот функционал не вытаскивали наружу. Можно расценивать это как фичареквест? А приложение точно будете делать? .
Alexander (Blend4Web Team)
twitter
24 November 2017 16:01
I've attached the corrected project.
Some notes:
1) The option "Object Physics" overrides "Special: Collision" option. I've disabled it.
2) Currently, obj_hit is always null for ray test with "Special collision" objects and you should use "Collision ID" and register the callback for each part of your cloth, or join all parts into one mesh.

Great model! And project!
Alexander (Blend4Web Team)
twitter
24 November 2017 13:02
Hello!

Can you show the output of the Developer Console? Press F12 on most web browsers and find Console.

As far as I can see you are using Internet Explorer.
Did you try to load the webpage with other browsers?
Alexander (Blend4Web Team)
twitter
24 November 2017 12:51
Currently Blend4Web supports only uniform scale (in all directions at once).

Another option is to modify geometry directly with geometry module (extract_index_array, extract_vertex_array, update_vertex_array).
Alexander (Blend4Web Team)
twitter
24 November 2017 12:42
Hello! And welcome to our forum!

Currently Blend4Web supports only own format which can be exported only from Blender. In the future we are going to add ability to load other formats.
Alexander (Blend4Web Team)
twitter
24 November 2017 12:25
В данный момент нет такой ноды. В таких случаях можно использовать ноду JS Callback

Для определения того, что объект находится под мышкой можно использовать функцию pick_object. Но лучше не вызывать эту функцию каждый кадр, поскользу это может сказаться на производительности, ведь при каждом вызове происходит рендеринг color-picking сабсцены, а это довольно дорого.
Дешевле кастить луч физическим движком как в этой демке.

Вот пример по замене курсора
Alexander (Blend4Web Team)
twitter
24 November 2017 11:38
Всем доброго времени суток.
Наткнулся на такой интересный проект как soft8soft, основанный на three.js, что означает, что по умолчанию он имеет ряд преимуществ перед b4w
Кто что думает по этому поводу?

Здравствуйте dI0_oIb!
three.js наряду с преимуществами имеет также недостатки. Например отсутствие оптимизаций для рендера большого количества объектов, не достаточно качественные тени. На данный момент Blend4Web лучше интегрирован с Blender: имеется простой интерфейс настройки постэффектов, физики итд.

Проект verge3d достаточно интересный и бузусловно найдет свою нишу.

Ну и про совместную установку

Интересный комментарий. Но на самом деле здесь вопрос больше в технической стороне. На данный момент SDK устанавливается именно таким образом потому, что так разработчикам движка удобнее модифицировать исходники аддона для Blender. И это означает, что другое решение существует! Вдобавок Blend4Web содержит ряд спорных технических решений (которые по факту были предприняты и в verge3d). Эти решения ограничивают функционал SDK в случае если устанавливать только аддон.
С нашей стороны планируется полный пересморт содержимого SDK и методов установки. А еще пролетала птичка и напела, что в следующем релизе Blend4Web будут изменения значительно упрощающие жизнь разработчику. При этом будет достаточно лишь аддона (но об этом никому….ок? ). А для художников изюминка уже приготовлена.
Alexander (Blend4Web Team)
twitter