События

Релиз 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.

Комментарии
30 ноя. 2016 12:55
Ура поздравляю с новой версией). Надеюсь с поддержкой нод cycles B4W опробует и будет использовать больше народу и наше комьюнити вырастет еще больше).

Пора качать и юзать стабильный релиз.
30 ноя. 2016 13:35
Который раз обращаю внимание на неправильное использование некоторых слов.
Функционал vs Функциональность

Wiki
"Не следует путать с функциональностью — совокупностью возможных вариантов использования или возможных действий выполняемых неким объектом (программой, продуктом, изделием, специалистом и т. д.).

Функциона́л — это отображение, заданное на произвольном множестве и имеющее числовую область значений: обычно множество вещественных чисел или комплексных чисел."

Функционал это функция, математика короче.
Функциональность это инструменты работы чего либо.

Хочу заметить что в названии ветки "Предложения по функционалу" "Предложите для реализации новый функционал" тоже неправильно употреблено, как и в примечаниях к релизу.
30 ноя. 2016 13:47
"Пример использования этого модуля можно увидеть в обновлённой сцене Jungle Outpost. В качестве бонуса к сцене также добавлена винтовка (благодарим zehmx за предоставленную модель)."

Мышка не вращает камеру, двигается персонаж только в плоскости вида.
При клике стреляет.

UPD: Не работает исключительно в Vivaldi, в Chrome работает нормально.
30 ноя. 2016 15:48
Поясните пожалуйста
"Эта нода определяет материал как использующий физический рендеринг (PBR-материал)."
"работают с новыми PBR-материалами."

B4W стал поддерживать PBR? Звучит как не было и теперь завезли.


30 ноя. 2016 15:49
Сделал реэкспорт сцен с новой версией, но версия в консоли не сменила. Это нормально?



UPD: А оно оказывается и не экспортируется теперь почему-то. Я вручную экспортировал, но в консоли все равно старая версия висит. Теперь нужно снова проходиться по сценам и по одному разу экспортировать все? В Blend файлах по умолчанию пути и название файла правильно стоят.
Раньше при обновлении SDK все было - ок

30 ноя. 2016 17:17
"Теперь методы get_all_objects, get_object_by_name и check_object_by_name не возвращают внутренние мета-объекты движка, не предназначенные для использования в приложении."

И что делать если использую активно get_object_by_name ??
и зачем это пох_рено?
30 ноя. 2016 17:49
Сделал реэкспорт сцен с новой версией, но версия в консоли не сменила. Это нормально?

Попробуй https://www.blend4web.com/doc/ru/setup.html#updating-saved-projects
Ещё может у тебя движок в файле проекта? Тогда надо обновить просто.
30 ноя. 2016 17:57
"Теперь методы get_all_objects, get_object_by_name и check_object_by_name не возвращают внутренние мета-объекты движка, не предназначенные для использования в приложении."

И что делать если использую активно get_object_by_name ??
и зачем это пох_рено?

мета-объекты движка это всего лишь вспомогательные объекты сгенерированные движком, они не влияют на сцену или приложение, они просто засоряли выдачу этих методов, теперь не засоряют.
30 ноя. 2016 18:03
Ответ на сообщение пользователя Михаил Беззубиков
мета-объекты движка это всего лишь вспомогательные объекты сгенерированные движком, они не влияют на сцену или приложение, они просто засоряли выдачу этих методов, теперь не засоряют.

Фуххх … но наверное стоит как то изменениях к релизу это более понятно расписать ?
30 ноя. 2016 18:17
Фуххх … но наверное стоит как то изменениях к релизу это более понятно расписать ?

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