События

Релиз Blend4Web 16.11

2016-11-30

Представляем новую версию Blend4Web — открытой платформы для создания интерактивных веб-приложений. Наиболее значительные нововведения этого релиза: поддержка материалов системы визуализации Cycles, новый модуль API для создания приложений с видом от первого лица, обновлённый квест Пятигора (с исходными файлами), а также текстовый редактор для Менеджера проектов.

Поддержка Cycles

Для создания изображений и видео многие художники, работающие в Blender, используют Cycles - встроенную в Blender систему высококачественного рендеринга, основанную на алгоритмах трассировки лучей. Материалы для Cycles строятся при помощи отдельного набора нод, значительно отличающегося от нод GLSL, используемых для создания материалов в окне просмотра Blender и в Blend4Web. Тем не менее, учитывая большое количество уже существующего контента для Cycles и многочисленные запросы со стороны сообщества, мы приняли решение начать работу по поддержке материалов Cycles в Blend4Web.

Сравнение результатов рендеринга в Cycles и в Blend4Web, ч. 1.

Из-за ограничений производительности, которые неизбежны при рендеринге в реальном времени, материалы Cycles невозможно напрямую портировать в WebGL. Тем не менее, представляется возможным использовать приближенные алгоритмы для получения похожего результата. Мы начали с наиболее важных и распространённых нод, таких как Material Output, BSDF Diffuse, BSDF Glossy и других нод, широко используемых в моделях, которые пользователи Blender загружают на сайт BlendSwap (популярный каталог свободных .blend-файлов; благодарим пользователей Albin и gregzaal за предоставленные модели). Кроме того, кнопка Fast Preview теперь работает и в Cycles, так, чтобы экспортировать модели можно было без переключения в режим Blend4Web.

Сравнение результатов рендеринга в Cycles и в Blend4Web, ч. 2.

С полным списком поддерживаемых нод, входов, выходов и параметров можно ознакомиться здесь. Ждём ваших отзывов и пожеланий относительно дальнейшей разработки этого замечательного функционала.

Квест Пятигора

Сегодня мы представляем своего рода продолжение приключений Пятигора — небольшую браузерную игру в жанре point-and-click, которая впервые была представлена месяц назад на Blender Conference 2016 в Амстердаме. За прошедшее время мы добавили герою новые умения, доработали сюжетную линию, добавили в игру звук и новые эффекты.

Для тех, кто не искушен в решении таких головоломок, предназначена кнопка с вопросительным знаком...

Правила довольно просты: используйте подручные предметы, чтобы сбежать из темницы тролля и не попасться!

Здоровый дядька… хорошо, что он спит.

В отличие от предыдущей части, эта игра создавалась почти без программирования, с помощью визуального редактора логики. Желающие могут изучить исходные файлы, которые входят в состав как CE, так и PRO-версии Blend4Web. Вперёд, навстречу приключениям!

Управление от первого лица

Хорошие новости для разработчиков приложений с видом от первого лица (в частности, игр). Появился модуль fps.js, который значительно упрощает создание подобных приложений. Кроме того, этот модуль поддерживает управление с помощью геймпадов, тачскринов и даже устройств виртуальной реальности, обеспечивая правильную работу как на стационарных, так и на мобильных платформах.

Создавать шутеры стало проще.

Пример использования этого модуля можно увидеть в обновлённой сцене Jungle Outpost. В качестве бонуса к сцене также добавлена винтовка (благодарим zehmx за предоставленную модель).

Менеджер проектов

Теперь исходные файлы проекта (HTML, CSS и JavaScript, а также конфигурационные файлы) можно изменять с помощью текстового редактора, встроенного в Менеджер проектов. Этот редактор очень прост, однако он поддерживает Unicode (в том числе Windows), нумерацию строк, подсветку синтаксиса, и работает в браузере. Он избавляет пользователя от необходимости искать нужный файл в папках SDK и прекрасно подходит для быстрого внесения изменений в проект.

Редактирование текстовых файлов в Менеджере проектов.

Прочие нововведения

Алгоритм поиска путей, появившийся в предыдущем релизе, теперь поддерживает объёмные навигационные сетки. Кроме того, сами сетки теперь строятся быстрее, что уменьшает время загрузки.

Важное усовершенствование для удобства использования: больше не нужно вручную задавать путь к папке SDK, теперь он определяется автоматически при установке.

Переработан метод API для снятия скриншотов, который теперь может создавать изображения любого размера (в частности, снято ограничение на размер скриншота не более 2 Мб в браузерах на основе Chromium). Проблему удалось обнаружить благодаря победителю конкурса «Ретро авто», который использовал этот функционал в своей замечательной работе.

Кнопка снятия скриншотов в конкурсной работе «Impala».

Процедура настройки процедурного неба и динамической воды стала проще. Теперь процедурное небо отображается, даже если в сцене нет источника света типа Sun, а волны воды проявляются даже при отсутствии ветра.

Заключение

Как обычно, в SDK включены исходные файлы всех примеров, использованных в этой статье. С полным списком изменений и исправленных ошибок можно ознакомиться в замечаниях к релизам. А если вы пропустили последние события, советуем заглянуть в наш блог и ознакомиться с новыми уроками, результатами конкурса «Ретро авто» и новыми проектами, созданными с использованием Blend4Web.

Комментарии
01 дек. 2016 04:49
Может туплю? а может не очень понятно написано в доках, как нужно собирать материал используя ноды САЙКЛЕЗ?

переключившись в режим B4W в списке нет нод сайклез и соответсвенно на вывод материала работает нода из b4w
а переключившись в режим сайклез да ноды доступны , но я так понимаю нужно и использовать ноду вывода сайклез итд..

прошу, как то разъяснить методологию использования таких материалов и комбинирования нод сайклез и остальных в текущем релизе.
(в доках ничего не нашел.. как типа все так и надо ))
Спаисбо.

PS да и при экспорте в JSON влияет ли выбраный режим B4W или CYCLES ?
01 дек. 2016 15:06
В отладчике, изменения Ambient применяются только после того как что то меню во вкладке Sky.
01 дек. 2016 18:00
Ответ на сообщение пользователя Михаил Беззубиков
Попробуй https://www.blend4web.com/doc/ru/setup.html#updating-saved-projects
Ещё может у тебя движок в файле проекта? Тогда надо обновить просто.

Мутотень какая-то.
Vivaldi показывает 16.10. У меня все обновлено и вручную скопировано.
Chrome показывает что 16.11.
В самом файле b4w.min.js - 16.11.
Я уже думал неправильно на хостинг залил, но нет. В Chrome из менеджера проектов, с хостинга показывает 16.11, а Vivaldi 16.10

01 дек. 2016 18:11
Я уже думал неправильно на хостинг залил, но нет. В Chrome из менеджера проектов, с хостинга показывает 16.11, а Vivaldi 16.10
Магия. Может кеш бразуера какой-нибудь виноват?
01 дек. 2016 18:29
переключившись в режим B4W в списке нет нод сайклез и соответсвенно на вывод материала работает нода из b4w
а переключившись в режим сайклез да ноды доступны , но я так понимаю нужно и использовать ноду вывода сайклез итд..

прошу, как то разъяснить методологию использования таких материалов и комбинирования нод сайклез и остальных в текущем релизе.
(в доках ничего не нашел.. как типа все так и надо ))
Спаисбо.
Ноды сайклз доступны только в режиме сайклз. Выходную ноду нужно использовать сайкловсую (Surface сокет). Список нод, которые можно использовать на данный момент, есть в замечаниях к релизу. Комбинировать ноды сайклз с нодами, которые есть только в блендер интернал не стоит (как говорится, "мухи отдельно, котлетки отдельно" ), те ноды, которые присутствуют в обоих рендерах и ранее поддерживались в b4w, естественно, можно использовать везде.

PS да и при экспорте в JSON влияет ли выбраный режим B4W или CYCLES ?
Абсолютно не влияет
01 дек. 2016 19:51
Ответ на сообщение пользователя Константин Хомяков
Ноды сайклз доступны только в режиме сайклз. Выходную ноду нужно использовать сайкловсую (Surface сокет). Список нод, которые можно использовать на данный момент, есть в замечаниях к релизу. Комбинировать ноды сайклз с нодами, которые есть только в блендер интернал не стоит (как говорится, "мухи отдельно, котлетки отдельно" ), те ноды, которые присутствуют в обоих рендерах и ранее поддерживались в b4w, естественно, можно использовать везде.
Абсолютно не влияет

перед обнослением релиза была у меня странаня проблема со скопированным нодовым материалом и объектами
с наложеными текстурами через геометрию. ну ни как после копирования текстура ен отображалась ((
ни какие шаманства не помогали. обновил и скомбинировал ноды из сайклез с нодами b4w и о чудо заработало )))
а чем отрицательно может повлиять такое на приложение?
02 дек. 2016 10:24
а чем отрицательно может повлиять такое на приложение?
Пока что особого вреда быть не должно, но в будущем вряд ли будет гарантироваться поддержка совместимости и предсказуемость поведения.
02 дек. 2016 15:52
Я уже думал неправильно на хостинг залил, но нет. В Chrome из менеджера проектов, с хостинга показывает 16.11, а Vivaldi 16.10
скорее всего, браузерный кеш, в vivaldi как и в хроме можно отключить его для открытой консоли:

02 дек. 2016 16:54
Вопрос не конкретно по этому релизу, а скорее WebGL:

Как избавиться от этого "муара" при движении камеры? Текстура масштабирована.

https://youtu.be/RpPVpHbcwjA
02 дек. 2016 16:58
Как избавиться от этого "муара" при движении камеры? Текстура масштабирована.
Тени на объекте включены? Возмонжно это самозатенение "муарит". Попробуйте покрутить во вьювере Blend4Web настройки теней Self-shadow polygon offset и Self-shadow normal offset.
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.