События

Релиз Blend4Web 17.12

2017-12-29

Завершается 2017 год и вместе с ним мы представляем итоговый релиз этого года. В этом релизе мы представляем несколько очень важных нововведений, серьезных внутренних изменений и исправления ряда ошибок в работе движка. Так, теперь Blend4Web поддерживает ноду Principled BSDF и дает возможность использовать классические PBR-материалы, внутренне переведен на стандарт Javascript ES6 и доступен через NPM – Node.js Package Manager. Мы улучшиои поддержку Cycles-нод, работу физического движка и режима быстрого просмотра сцены.

PBR

Уже долгое время мы постепенно добавляем в Blend4Web возможности для более простого создания фотореалистичной графики. Мы реализовывали поддержку нод Cycles, вводили дополнительные ноды в Internal рендере, программировали визуальные эффекты. Настала очередь ввести поддержку классических Physically based rendering (PBR) материалов. Как мы и обещали в предыдущем релизе, мы реализовали поддержку ноды Principled BSDF.

Дед мороз в PBR (кликните для просмотра сцены)

В честь нового года мы подготовили небольшую демонстрацию возможностей Blend4Web по отображению PBR-материалов. Вы можете познакомиться с ней уже сейчас.

Теперь у вас есть отличная возможность воспользоваться огромной базой уже готовых PBR-материалов и придать вашим 3D моделям по-настоящему реалистичный вид! На сегодняшний день мы поддерживаем параметры классической metal-roughness модели – полностью поддерживаются входы Base Color, Metallic, Roughness, Normal. Уже в следующем релизе мы представим поддержку рефракции, анизотропии и других эффектов Principled BSDF.

Поддержка карт Ambient Occlusion и Normal Map может быть реализована через стандартные методики Cycles. Уже сегодня возможности Blend4Web позволяют быстро создавать фотореалистичные материалы металлов, древесины, пластика, текстиля, кожи и ландшафта. Работа с параметрами сцены, рендеринга, постэффектов и логики, по-прежнему производится в режиме Blend4Web, в то время как для работы с материалами используется инструментарий Cycles.

Javascript ES6

Долгое время пользователи нашего движка жаловались на то, что его использование с современными фреймворками затруднено, что он слишком стоит «особняком», его неудобно использовать с популярными системами сборки javascript-приложений таких как webpack и включать в собственный пайплайн. Представляем вашему вниманию усовершенствованный движок Blend4Web с полной поддержкой модулей ECMAScript 6!

Все модули Blend4Web были адаптированы к стандарту ES6. В результате теперь можно воспользоваться API отдельных модулей, используя стандартные конструкции языка Javascript:

import b4w from "blend4web";
var m_app       = b4w.app;
var m_cfg       = b4w.config;
var m_data      = b4w.data;
var m_preloader = b4w.preloader;
var m_ver       = b4w.version;
var m_anim      = b4w.animation;
var m_cont      = b4w.container;
var m_mouse     = b4w.mouse;
var m_scenes    = b4w.scenes;
...

Собрать ваше приложение вы можете не только через Менеджер проектов Blend4Web (этот способ работает как и раньше), но и используя для этого стандартные инструменты сборки веб-приложений наподобие webpack, rollup и других.

Все демонстрационные приложения и веб плеер были теперь написаны с использованием модульного подхода ES6. Благодаря переходу на новую архитектуру теперь:

  • При сборке приложений более активно удаляется неиспользуемый код и модули движка. Уже на текущем этапе можно добиться экономии 200 Кб JavaScript-кода и более.
  • Стандартный формат модулей, подходящий для использования в приложениях на базе React, Vue.js, AngularJs, Polymer.
  • Код приложения становится более прозрачным, удобным для использования в интегрированных средах разработки приложений.

Текущие пользователи Blend4Web конечно не были забыты. Вы по-прежнему можете продолжать использовать движок в приложениях на базе диалекта JavaScript ES5. Мы поставляем собранный движок в виде стандартных файлов b4w.min.js, b4w.simple.js, b4w.js – ваши существующие приложения продолжат работать без изменений.

Поддержка NPM

Начиная с этой версии Blend4Web доступен через Node Package Manager! Для того, чтобы приступить к разработке приложений вам больше не обязательно скачивать весь дистрибутив движка, достаточно выполнить классическую команду

npm install blend4web

Через несколько секунд весь потенциал движка будет на кончиках ваших пальцев!

В комплекте поставки пакета идет аддон для Blender, поэтому вы можете приступить к использованию Blend4Web в полном объеме сразу же!

Пользователи, использующие обычные дистрибутивы Blend4Web CE, Blend4Web PRO с нашего веб-сайта, так же сразу могут приступить к использованию node.js в работе над проектами. Для вашего удобства мы включили в комплект поставки копию среды node.js. Для ее запуска достаточно использовать скрипты scripts/node.sh и scripts/npm.sh.

Условия распространения движка через NPM ничем не отличаются от других способов распространения. Вы можете использовать программный код на правах лицензии GPL 3.0. Если условия этой лицензии вас не устраивают (например, обязательство раскрывать исходные тексты приложения), то вы должны приобретать лицензию на Blend4Web PRO SDK.

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

Начиная с версии 17.12 аддон к Blender не требует наличия полной копии SDK для того, чтобы работала функция Fast Preview – необходимые модули включены в сам аддон.

Кроме того, в данном релизе мы улучшили работу ноды Transparent BSDF. Теперь в этой ноде появилась дополнительная опция «Use Alpha», с помощью которой становится возможным имитировать поведение обычных прозрачных материалов Blend4Web с режимом блендинга «Alpha Sort».

Также, по многочисленным запросам пользователей, мы добавили поддержку ноды Attribute, с помощью которой становится возможным прямое управление вертексным цветом. Поведение выхода Color этой ноды аналогично поведению выхода Vertex Color ноды Geometry рендера Blender Internal.

Наконец, теперь физический движок умеет корректно обрабатывать изменения формы объектов с помощью техники Shape Key.

С полным перечнем нововведений можно как всегда познакомиться в замечаниях к выпуску.

В завершение

Этот релиз, как всегда, включает множество исправленных ошибок. Мы провели тщательное тестирование новых функций и постарались сделать Blend4Web максимально стабильным. Вместе с тем, мы очень ждем обратной связи от всех участников нашего сообщества и PRO-пользователей с замечаниями и предложениями по дальнейшему улучшению движка и повышению его стабильности. Как всегда, мы будем рады вашим откликам в комментариях к этой статье и на нашем форуме!

Мы приготовили много сюрпризов на начало следующего года. Очень скоро мы:

  • представим вашему вниманию, полностью переосмысленный менеджер проектов, который значительно упростит установку, настройку и разработку приложений
  • запустим собственный хостинг, на котором вы сможете публиковать ваши модели и целые приложения
  • предложим вашему вниманию новые продукты на базе технологий Blend4Web, в частности конструктор для быстрого построения собственных конфигураторов

Следите за новостями!

Комментарии
31 дек. 2017 01:37
Поздравляю с релизом. Конфигуратор Деда Мороза здоровский . Материал одежды классный.

Есть пара вопросов.
1. Как ведут себя PBR материалы на мобильных устройствах? сильно ли они тяжелых для них.
2. Заметил что Viewer запускается дольше. Теперь пишет в браузере Compiling… секунд 5.
Это связано что модули были переписаны на новый стандарт ES6? и получается что движок теперь собирается из исходников постоянно?
3. На github версия не поменялась.

Надеюсь что в след. году появится больше демок и сайтов использующих b4w, показывающих всю красоту pbr шейдинга.
С наступающим Новым годом!
02 янв. 2018 15:32
Поздравляю с релизом. Конфигуратор Деда Мороза здоровский . Материал одежды классный.

Есть пара вопросов.
1. Как ведут себя PBR материалы на мобильных устройствах? сильно ли они тяжелых для них.
2. Заметил что Viewer запускается дольше. Теперь пишет в браузере Compiling… секунд 5.
Это связано что модули были переписаны на новый стандарт ES6? и получается что движок теперь собирается из исходников постоянно?
3. На github версия не поменялась.

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

1) На мобильниках и на устройствах с WebGL 1.0 используется более простой алгоритм pbr энвайронмент освещения чем на мощных устройств на втором WebGL и в целом такие материалы сопоставимы по нагрузке с комплексными интернолавскими (в некоторых случаях даже оптимальнее). Необходимо только учитывать что для энвайронмент освещения под капотом используется дополнительная текстура помимо явно задействованных в нодах, что нужно помнить, чтобы не превысить лимит текстур для некоторых мобильных девайсов

2) Compiling перед открытием девелоперских версий приложений действительно связан с переход на es6 модули (сборка модулей движка вебпаком). Но такая компиляция должна происходить только при первом открытии приложения или при изменении кода (вебпак работает в режиме watch), а при изменении сцен повторная загрузка должна проходить так же быстро как раньше

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