Релиз движка для создания браузерных 3D-приложений Blend4Web 14.07
Увидел свет релиз открытого фреймворка Blend4Web 14.07, предназначенного для создания трехмерного интерактивного контента, работающего в браузерах без использования плагинов. Blend4Web тесно интегрирован с открытым пакетом Blender, использующимся в качестве основного инструмента редактирования 3D-сцен. Воспроизведение контента осуществляется средствами WebGL, Web Audio и других браузерных технологий. Пакет распространяется под лицензией GPLv3. Основные изменения:
Представлена новая демо-сцена «Фонтан». Для реализации интерьерного освещения используются несколько источников света. С целью симуляции потоков воды задействована комбинация систем частиц, нодовых материалов и источника звука. На сцене присутствуют реалистичные материалы бронзы и мрамора. Текстура окружения симулирует глубину резкости камеры и бесшовно сочетается с объектами на сцене. Реализована динамическая подгрузка и выгрузка дополнительных сцен. Функциональность предоставляет веб-приложениям возможность работы с неограниченным количеством загружаемых ресурсов (конфигураторы заказов, каталоги товаров, игровые уровни и т.п.). Модель освещения от окружающей среды (ambient) дополнена возможностью использования карт окружения с целью увеличения реалистичности визуализации локальных сцен (методика image-based lighting). Текстура окружения (skydome) теперь настраивается с помощью стандартных инструментов программы Blender; ранее для этой цели использовалась специальным образом подготовленная модель. Добавлена поддержка ноды Lamp Data визуального редактора шейдеров, реализованная в Blender 2.70. Нода предоставляет значения параметров источников света, что позволяет создавать различные интересные эффекты (например, симулировать подповерхностное рассеивание). Оптимизированы шейдеры частиц с целью расширения спектра поддерживаемых устройств; также для частиц добавлена поддержка моделей освещения (ранее поддерживался единственный вариант — shadeless). Упрощено использование функциональности выбора 3D объектов пользователем (picking), с этой целью была расширены API и модель сенсоров. Решены проблемы физической симуляции на малопроизводительных машинах. Для этого в потоке физического движка реализован независимый от главного потока отсчет времени. В результате значительно улучшено качество симуляции в браузерах с поддержкой таймера высокой точности performance.now (). За счет устранения излишней синхронизации между потоками увеличена производительность. Частота обновления физики удвоена в режиме ULTRA (120 Гц). Подготовлен ряд обучающих статей, описывающих рабочий процесс симуляции ткани, программирование сложной прикладной логики, создание игровой анимации и спецэффектов. Исходные файлы приложений и моделей включены в состав распространяющейся под лицензией GPLv3 версии Blend4Web SDK. Некоторые улучшения в подсистеме анимации. Устранена рассинхронизация при совместном использовании анимации различных типов. Улучшено качество воспроизведения звука при резком перемещении звуковых источников, в частности, введены API для перерасчета эффекта Допплера. Устранены зависания движка в случае отсутствия необходимых кодеков в браузерах. Устранена ошибка прокручивания области отрисовки на мобильных устройствах. Для эффекта рельефной поверхности (методика parallax relief mapping) введен параметр расстояния, с которого начинает проявляться эффект. Обеспечена работа дополнения к программе Blender на платформах Windows 8.1, Centos 6+ и всех версий Ubuntu начиная с 10.04. Реализован режим совместимости для захвата указателя мыши (pointer lock) в случаях отсутствия поддержки этих API в браузерах (Safari, IE), или отказа пользователя от блокировки курсора. Решена проблема с недостаточной точностью чисел в шейдерах на устройствах на базе GPU Mali-604, приводящая к некорректному отображению тумана. Оптимизировано демо-приложение «Остров» с целью расширения спектра поддерживаемых мобильных устройств. В документации API описаны параметры конфигурирования движка. В руководстве пользователя изменены и дополнены разделы, отражающие новую функциональность.
© OpenNet