События

Релиз Blend4Web 16.04

2016-04-28

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

Конференция по Blend4Web 2016

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

Геймпады и игровые контроллеры

В этом релизе мы начали работу над интеграцией возможностей, предоставляемых спецификацией Gamepad API. В модуль input добавлен новый тип устройства "Gamepad", а в модуль controls два новых сенсора "Gamepad Buttons" и "Gamepad Axes". Подробнее о новом функционале будет говориться в докладе "VR and Web API with Blend4Web" на конференции Blend4Web.

Визуальный редактор логики

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

Точка входа узлового дерева может быть запущена с помощью нового метода run_entrypoint():

var m_logic_nodes = b4w.require("logic_nodes");
m_logic_nodes.run_entrypoint("MyScene", "MyEntryPoint");

Узел Entry Point с включенной опцией Run From Script. Название узла устанавливается в свойствах.

Для узла Entry Point должна быть включена опция Run From Script.

Мы также реализовали новый логический узел JS Callback, который применяется для вызова callback-функций, задаваемых в приложении (включая возможность передачи параметров в обе стороны). Данная функция может быть зарегистрирована с помощью функции API add_custom_callback нового модуля logic_nodes.

m_logic_nodes.append_custom_callback("my_function", function() {
    alert("Hello World!");
});

Щелчок на кубе вызывает функцию, зарегистрированную как "my_function".

Отражения для полупрозрачных объектов.

Ранее только непрозрачные объекты могли иметь отражения. Начиная с этого релиза, полупрозрачные объекты также поддерживаются.

Пустая пластиковая бутылка из-под молока. Слева: прозрачные части не отражаются, справа: модель корректно отображается.

Улучшения системы частиц типа Emitter

Теперь для систем частиц типа Emitter поддерживаются две новые опции Tilt Angle и Tilt Random. Они позволяют задать смещение начального угла эмиссии биллбоардов, что позволяет улучшить визуальное качество эффектов, основанных на системах частиц.

Параметры вращения для системы частиц.

В мастер-классе "Think outside the box: Visual Effects", подготовленном для конференции Blend4Web 2016 эти и другие опции будут рассмотрены более подробно.

Прочие улучшения

Математические модули vec3, vec4, quat, mat3 и mat4 теперь основаны на glMatrix v2.3.1. Новая версия также добавляет следующие методы: hermite, bezier, sqlerp, fromRotationTranslationScale и fromRotationTranslationScaleOrigin.

В инструмент запекания скелетной анимации был добавлен флаг Bake Only Deform Bones. Эта возможность полезна в случае, когда некоторые объекты являются потомками недеформированных “костей”. До этого запечь “кости” без выставленного флага deform было невозможно.

Новый переключатель GL Debug в Просмотрщике, который может использоваться для отключения проверок ошибок WebGL. Это увеличивает производительность и может быть полезно при отладке производительности ("профайлинге") сцены.

В модуль controls была добавлена новая функция create_hmd_position_sensor. Эта функция позволяет создать особый сенсор для отслеживания позиции HMD-устройств.

Новая опция настроек движка: prevent_caching. Включает и выключает кэширование медиаданных.

Новая функция физического движка apply_force_world, которая применяет силовое воздействие к объектам в мировой системе координат.

В завершение

Данный релиз совместим с версиями Blender 2.77 и 2.76. Как обычно, исходные файлы всех приложений находятся в составе открытого дистрибутива Blend4Web SDK. С полным списком изменений и исправленных ошибок можно ознакомиться в замечаниях к релизу.

Комментарии
10 май. 2016 04:24
…с колбэками как-то сложновато, будем ждать simple sample.

В таких случаях встаёт вопрос об интеграции логических узлов с кодом, написанным на JavaScript.
классная фича, напрашивалась давно, только как реализуема?
типа у меня есть где-то файл скрипта, пишу его имя в окошке name (судя по скрину), активирую [v] run from script и вуаля… верно?

чето думал шо это должен быть нод с большим окном (скажем script node) куда копипастом вставляем блок скрипта, и присоеденяем этот нод в любом месте дерева визуальной логики.
а тут скрип с энтри поинт крепится :/
короче, пока не все ясно :)
10 май. 2016 08:32
Ответ на сообщение пользователя patsak
В таких случаях встаёт вопрос об интеграции логических узлов с кодом, написанным на JavaScript.
На конференции рассказывали, как ими пользоваться
https://youtu.be/JPUIe5bi774?t=17427
10 май. 2016 12:47

классная фича, напрашивалась давно, только как реализуема?
типа у меня есть где-то файл скрипта, пишу его имя в окошке name (судя по скрину), активирую [v] run from script и вуаля… верно?

Здравствуйте!

Данная фича доступна только в полных b4w приложениях, в которых присутсвует JS часть, в которой коллбеки регистрируются перед непосредственной загрузкой сцены.
Пример, думаю, выложим вместе с обработанным видео с конференции
Пожалуйста, зарегистрируйтесь или войдите под своей учетной записью , чтобы оставлять сообщения.