Представлен новый релиз открытого фреймворка для создания браузерных 3D-приложений Blend4Web 15.09. Blend4Web предназначен для создания трехмерного интерактивного контента, работающего в браузерах без использования плагинов. Пакет тесно интегрирован с открытым пакетом Blender, использующимся в качестве основного инструмента редактирования 3D-сцен. Воспроизведение контента осуществляется средствами WebGL, Web Audio и других браузерных технологий. Наработки проекта распространяются под лицензией GPLv3.
Основные изменения:
- Процедурное управление анимационным скелетом. Процедурное управление костями может понадобиться для визуализации движения сочленений в техногенных объектах (таких каких манипулятор робота), а также для процедурной анимации органических объектов (в том числе игровых персонажей).
- Кроме того, кости скелета могут теперь симулироваться с помощью физики жестких тел, включая столкновения, гравитацию и ограничения степеней свободы. Наиболее известный способ применения этого функционала - так называемые «рэгдоллы» (англ. ragdoll, тряпичная кукла), обычно используемые для реалистичной симуляции свободного движения персонажей. Среди других возможных способов применения можно отметить визуализацию гибких объектов (канаты), изгибание растительности при взаимодействии с объектом или персонажем и т.п.
В качестве примеров работы новой функционалности были созданы демо-приложения:
- Новые средства для управления проектами. Все операции по созданию и управлению ресурсов приложений сведены в единый управляющий скрипт project.py, написанный на языке Python (интерпретатор которого не требуется устанавливать отдельно, т.к. он уже находится в составе Blender). Среди этих операций - создание нового проекта, добавление приложений в проект (один проект может включать несколько приложений), сборка проекта (минификация, обфускация), копирование всех файлов проекта с целью последующего развертывания, автоматический экспорт blend-файлов проекта, конвертация ресурсов (текстуры, звуковые и видео-файлы) проекта в альтернативные форматы для обеспечения кроссбраузерности и кроссплатформенности.
На основе данной консольной утилиты был также реализован графический менеджер проектов в виде веб-приложения, выполняющегося на сервере разработчика. Помимо выполнения перечисленных команд, инструмент позволяет просматривать и редактировать рабочие файлы приложений, а также запускать сами приложения непосредственно из окна браузера.
- Многочисленные улучшения в визуальном редакторе логики. Вместо ноды Play реализованы две новых ноды анимации: Play Timeline (проигрывание глобальной шкалы времени) и Play Animation (проигрывание анимации индивидуального объекта). Кроме того, в редактор были добавлены ноды: Select&Play Timeline и Select&Play Animation (совмещают выбор объкта и анимацию), Set Shader Node Param (установка параметров нодового материала), Inherit Material (унаследовать свойства с одного материала на другой), Apply Shape Key (морфинг геометрии объекта), Send Request (отправка GET запроса на сервер и получение ответа), Delay (задержка выполнения программы).
- Улучшенния поддержка видео-текстур. Добавлена возможность использования видео-текстур совместно с системой нелинейной анимации.
- Дополнения (такие как app, mouse и другие) теперь всегда компилируются вместе с движком. Тем не менее, используя систему управления проектами, возможно создавать приложения только с тем набором функций, которые реально используются - отсечение неиспользуемого функционала производится автоматически в момент сборки приложения.
- Обеспечена первоначальная поддержка работы платформы в Windows Phone 8, устанавливаемой на таких устройствах, как Nokia Lumia.
- Для стандартного веб-плеера добавлен URL-атрибут alpha, управляющий прозрачностью области отрисовки.
- Упрощено использование системы дополнения для перевода - теперь можно добавлять новые переводы и изменять существующие с помощью простого редактирования *.po-файлов. Сделаны исправления и исправлены неточности в переводе аддона на русский язык.
- Многочисленные исправления ошибок и оптимизации производительности.
|