Blend4WebКатегории

WebGL

Смотрите также категорию WebGL для всех разделов

12 фев 2016

Конкурс от разработчиков Blend4Web

Разработчики открытого фреймворка Blend4Web объявили о конкурсе с солидным призовым фондом. На этот раз тема конкурса стала ближе художественной братии. Необходимо создать презентацию несуществующего в природе смартфона. Это можно сделать, как в виде простого просмотра модели аппарата, так и в виде динамичной игровой сцены. Главное условие — нельзя использовать бренды и фото реальных аппаратов.
Конкурс от Blend4Web | Конкурс от разработчиков Blend4Web
Работы принимаются до 9 марта включительно, а результаты будут опубликованы 12 марта.

Общий призовой фонд составляет 75000 рублей+скидки на лицензии Blend4Web Pro.
См. подробности на странице конкурса.

Ссылка

27 дек 2015

Новые ништяки от Blend4Web

Осталось буквально несколько дней до праздников и этот последний обзор , последнего же релиза уходящего года.

Первое, что бросилось в глаза при просмотре пресс-релиза — это симпатичная зимняя демонстрация , скриншот из которой вы можете видеть.

Blend4Web 15.12 | Новые ништяки от Blend4Web

Вообще в традициях разработчиков движка с каждым релизом создавать демо, показывающие новые возможности. Но в этот раз, мне пришлось присмотреться к сцене, чтобы увидеть эти самые новшества. Теперь движок умеет генерировать тени от нескольких источников света. И это здорово, так как придает сцене более реалистичный вид. Всего таких источников отбрасывающих теней может быть не более четырех, а если вы используете SSAO, то количество ограничивается тремя. Впрочем и этого достаточно.

Blend4Web 15.12 | Новые ништяки от Blend4Web

Эта невзрачная картинка — на самом деле скриншот второго демо из релиза, посвященного очень интересной новинки. Разработчики сделали первый шаг к созданию системы GUI для Blend4Web.

Напомню, что традиционно для Blend4Web было два пути создания интерфейса приложения: использовать HTML/CSS или ваять элементы непосредственно в Blender. Я предпочитаю второй вариант, но у него есть большой недостаток. Дело в том, что объекты интерфейса привязываются к камере Blender и пока пропорции экрана приложения соответствуют пропорциям камеры в сцене — проблем никаких нет. Однако, разрешения и соотношения сторон бывают абсолютно разные. Понятное дело, вся верстка начинает плыть. Это главная причина, почему я в своих приложениях всегда ограничиваюсь жесткой установкой рабочего разрешения. Разработчики Blend4Web сделали роскошный подарок к новому году в виде инструмента Viewport Alignment. С его помощью можно привязать элементы GUI к любой стороне, углу или центру камеры. И теперь при изменении масштаба экрана, движок будет автоматически корректировать расположение объектов, т.е. они останутся на месте. Это круто!

Blend4Web 15.12 | Новые ништяки от Blend4Web

Любители редактора логики порадуются двум новым нодам. Первая Move To отвечает за перемещение объекта в сторону другого. По секрету скажу, что на официальном форуме мелькнула информация, что разработчики движка хотят создать еще узлы для контроля движения объектов в сцене. А это значит, что в скором времени можно будет обойтись только узловой логикой и забыть про код. Впрочем, это в будущем… А пока вторая нода — Console Print. Это аналог стандартной функции JavaScript, предназначенной для вывода информации в консоль браузера. С помощью нового узла можно вывести, как простое сообщение, так значение регистра логики. Полезная штука для тестирования своего приложения.
Blend4Web 15.12 | Новые ништяки от Blend4Web

Разработчики объявили о начале поддержки шлемов виртуальной реальности. Вообще Blend4Web уже умел работать со стереоизображением в режиме анаглифа. Теперь и это еще добавилось. Режим можно установить, либо с помощью соответствующей функции в API, либо просто ткнув кнопку в интерфейсе плеера движка. А это значит, что любую сцену без какой-либо переработки можно просмотреть в Oculus Rift. Разумеется, для этого придется скачать специальную версию браузера, так как в стабильных релизах поддержки WebVR пока нет. Это “ночная сборка” Firefox, либо экспериментальный Chromium. В документации движка все подробно расписано, если вы вдруг обладатель девайса  Oculus Rift и захотите немного потестировать.

Ну и под конец, приведу последнюю строку, без каких-либо изменений с официального пресс-релиза: “Приняты меры для обеспечения корректной работы рендерера на видео-картах Nvidia 200 серии, на устройствах iPhone 4, 4S, 5, iPad 2, 3, 4 и iPad Mini 1 и 2 поколений.”

Лично у меня нет такой видеоплаты и я не являюсь “счастливым” обладателем яблочных девайсов, поэтому отнесся весьма прохладно к новости. Впрочем, в глобальном масштабе — это важно и необходимо.

P.S. В этом месяце исполнилось ровно 5 лет, как началась разработка Blend4Web. Ребята добились значительных успехов и признания в различных отраслях. Движком заинтересовались крупнейшие корпорации, научные объединения, мировые сообщества. К сожалению, пока только в области виртуальных презентаций. Крупных игровых проектов нет, но все еще впереди! А так, чисто баловства ради, можете посмотреть новогоднюю открытку, которую выложила корпорация Dassault (французский производитель самолетов Falcon, Mirage, Rafale и т.д.) для своих клиентов. С Наступающим!

Ссылка

1 дек 2015

Релиз Blend4Web 15.11

Итак, чем этот релиз интересен для разработчиков. Во-первых, новостью о создании игры от команды Blend4Web. Во-вторых, серьезными изменениями в кодовой базе и инструментария. В-третьих, новыми фичами логического редактора. Есть еще в четвертых, в пятых и т.д. Поэтому все по порядку.

В состав дистрибутива Blend4Web вошел проект под названием Petigor's Tale (перевод: “Сказ о Пятигоре”). Собственно, так называется игра, по которой была создана целая серия уроков, размещенных на официальном сайте. Однако, теперь это самостоятельный проект, который, как уверяют разработчики движка, будет доведен до финала, а все исходники станут доступными для любой лицензии. Пока в дистрибутив вошел только начальный уровень, но если покопаться немного в исходниках, то можно заметить, что работа продвинулась гораздо дальше.

Сказ о пятигоре | Релиз Blend4Web 15.11

В последние месяцы разработчики Blend4Web тщательно перетряхивают кодовую базу своего движка. Многие функции пересматриваются и в той или иной мере оптимизируются. В этот раз они добрались до модуля Camera, содержащего функции управления камерами в сцене. Большое количество методов получили приставку “устаревшие” и через несколько релизов будут удалены из API. Для удобства, при запуске приложения, консоль браузера предупреждает разработчиков об использовании таких функций.

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

Еще одна важная новость — начало поддержки WebGL 2.0. Предполагается, что новая версия WebGL позволит значительно поднять рамку качества визуализации графики в браузерах. Однако, не все устройства смогут работать с этой версией. Для мобильных систем необходима поддержка OpenGL ES 3.0, которая стала появляться буквально год назад в топовых устройствах. Что же касается десктопных платформ, то здесь всё гораздо проще — видеочип должен быть не особо старым, например для NVIDIA низшей планкой являются GeForce восьмой серии.

В этот раз разработчики Blend4Web реализовали поддержку алгоритма антиалиасинга MSAA, который как раз требует WebGL 2.0.

MSAA | Релиз Blend4Web 15.11

Набор логических блоков пополнился еще тремя новыми нодами: Stop Animation, Stop Sound и Stop Timeline. В соответствии со своими названиями эти узлы отвечают за отключение объектной анимации, звука и глобальной анимации. Разработчики подготовили небольшую демонстрацию новых возможностей нод.

Ссылка

2 ноя 2015

Октябрьский выпуск Blend4Web

Итак, разработчики Blend4Web предоставили очередной релиз своей платформы. В этот раз упор был сделан на удобство работы с менеджером проектов и новый функционал редактора логики. Но обо все по-порядку…

Как вы знаете, в прошлой версии движка появилась визуальная система управления проектами. Ранее все действия выполнялись с помощью консольных утилит или просто ручками. Конечно, веб-интерфейс значительно упростил черновую работу.

В этот раз, в менеджер проектов добавилась возможность управления списками приложений SDK. На самом деле — это не такая уж тривиальная задача, если учитывать, что SDK изначально содержит десятки учебных проектов. Поэтому кнопочка “скрыть ненужные”, равно, как и сортировка по имени, значительно упрощает поиск. Но не это самое главное. Теперь менеджер приложений позволяет экспортировать или импортировать проекты! Удобно. Нажал кнопочку, проект упаковался в архив. Пришел домой и проделал обратную операцию. Если учесть, что файлы разбросаны по разным папкам (требование SDK), то это действие значительно упрощает жизнь.

Также была несколько изменена форма создания новых проектов. Добавились два типа: WebPlayer JSON и WebPlayer HTML. Т.е., эти заготовки предназначены для простого создания НЕ-программируемых приложений, использующих WebPlayer. Здесь логика “пишется” с помощью логического редактора нод.

Blend4Web 15.10 Музыкальное демо | Октябрьский выпуск Blend4Web

Изменения в нодах логики:
- Play Sound. Проигрывание выбранного спикера.
- Move Camera. Управление движением камеры.
- Switch Select. Аналог Select, но выполняющий его функции со множеством объектов.
- Math. Добавилась функция Random для генерации случайных чисел. Как это работает, можно увидеть в специальном демо.

Blend4Web 15.10 | Октябрьский выпуск Blend4Web

Теперь движок уверенно “жует” большие текстуры и текстуры NPOT, которые автоматически масштабируются в соответствие с требованиями WebGL 1.0.

И под занавес… В Blender появилась кнопка “Fast Preview” для быстрого просмотра сцены в браузере.

Ссылка

1 сен 2015

Релиз Blend4Web 15.08

Последний день августа и разработчики представили очередную версию Blend4Web. Это очень интересный релиз, имеющий три важных пункта:

1. Новый редактор логики.
2. Масштабная презентация завода.
3. Начало рефракторинга движка.

Blend4Web тесно взаимосвязан с пакетом Blender, что позволяет в кратчайшие сроки создавать интерактивные WebGL-приложения. Объекты, материалы, анимация, физика - все это отлично понимается движком и без проблем компилируется в WebGL. Тем удивительней было то, что год назад разработчики предложили сообществу визуальный конструктор логики, сделанный по принципу стека. Мне сложно судить о причинах такого решения, ведь получившийся конструктор оказался очень неудобным. Этот релиз наконец-то предоставил качественный редактор логики, сделанный на основе механизма нод Blender. Те, кто не в курсе, что это такое - представьте свободно перемещаемые панели с определенной функцией, которые могут соединяться между собой специальными "проводниками". С помощью таких узлов можно управлять показом объектов, проигрывать анимацию и эффекты, строить простейшие логические конструкции. Разработчики обещают со временем расширить список доступных логических нод.

Blend4Web. Новый редактор логики | Релиз Blend4Web 15.08

Разработчики представили новую презентацию, где демонстрируется работа промышленного предприятия. С одной стороны - это никак не связано с gamedev'ом, а с другой позволяет оценить пригодность фреймворка. Удивительно то, что приложение прекрасно себя чувствует в мобильных браузерах, несмотря на сложность и насыщенность сцен. По словам разработчиков, приложение создавалось художниками без привлечения программистов.

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

Blend4Web. Презентация завода | Релиз Blend4Web 15.08

Дополнительные особенности релиза:

1. Поддержка нового браузера Edge системы Windows 10.
2. Полная поддержка вспомогательного инструментария SDK для пользователей Windows (сборщик проекта, конвертер ресурсов)
3. Новые функции API, позволяющие перемещать объекты в локальной системе координат, вне зависимости от "родителя". Добавлены функции вращения объекта по указанной оси.
4. Появилась возможность выполнения просчета физики в основном потоке, а не в worker-процессе. Это более оптимально для мобильных платформ.

Больше подробностей на официальном сайте

Ссылка | Комментарии [1]

30 окт 2014


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


"Капри" - 3D Интернет без компромиссов


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


Изображение
Ссылка для просмотра демо


Новый веб-плеер


Новый минималистичный дизайн веб-плеера удачно сочетается с любыми трёхмерными сценами, имеет интуитивно понятный интерфейс и встроенную подсказку по управлению. Веб-плеер работает на всём спектре оборудования, включая мобильные устройства.


Анимация и визуальный редактор логики


Реализована поддержка режима XYZ Euler для реализации поворотов в объектной и скелетной анимации. Ранее анимация вращения могла быть реализована только в режиме кватернионов.


Появилась возможность создания сложной логики в инструменте NLA Script с помощью блоков Conditional Jump, Register Store и Math Operation, а также переменных, сохраняемых в регистрах. Теперь в NLA Script можно использовать все типы анимации, поддерживаемые движком, включая воспроизведение звуков, вертексную анимацию и эмиссию частиц. Анимацию различных типов теперь возмож
но проигрывать параллельно.


Тени и SSAO


Добавлена возможность выбора некаскадной модели теней на основе одной оптимизированной карты теней. Такая модель проще в настройке и хорошо подходит для небольших сцен. Подробности и рекомендации по настройке приведены в документации.


Изменена реализация алгоритма эффекта взаимного затенения (SSAO). Новая реализация работает значительно быстрее и демонстрирует лучшее качество изображения.


Изображение


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


Добавлена поддержка типа текстурных координат GENERATED, являющегося для текстур в Blender'е значением по умолчанию. Эта функция позволяет в некоторых случаях полностью отказаться от использования текстурной развёртки, обеспечивая более экономичное в плане производительности решение.


Добавлена поддержка загрузки ресурсов с удаленного сервера (CORS).


Упрощен процесс экспорта сцен. Ряд ошибок, возникающих при экспорте материала, более не блокирует экспорт. Вместо этого при загрузке сцены данный материал будет отображаться розовым цветом. Более подробное описание ошибок приведено в документации. Переработан механизм использования опции Do not export.


Улучшена стабильность работы приложений на устройствах с мобильной операционной системой Apple iOS. Исправлены ошибки компиляции шейдеров на устройствах с графическими процессорами Qualcomm Adreno 305.


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

Ссылка

27 сен 2014

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

Визуальный редактор логики
На протяжении всего периода после первого релиза мы получали от сообщества отклики касательно имеющегося функционала Blend4Web. Одной из наиболее часто запрашиваемых сообществом - и отсутствующих - функций являлась возможность реализации интерактивности без необходимости написания кода. Сегодня в качестве первого шага в направлении создания визуального редактора логики мы представляем новый инструмент - NLA Script.

Как следует из названия, этот редактор основывается на встроенном в Blender редакторе нелинейной анимации (NLA). Этот редактор предназначен для манипуляции и синхронизации всех анимированных объектов на сцене, поддерживает воспроизведение аудио и эффекты частиц. Мы реализовали возможность добавления интерактивности с помощью интерфейсных блоков, содержащих описание действий в ответ на действия пользователя. Единственным поддерживаемым в настоящее время действием пользователя является нажатие мышью на заданных 3D объектах. В качестве ответа возможны проигрывание треков NLA с определенного кадра (задаваемого маркером) - Select, или переход к другому блоку - Jump.
Изображение

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

Среди других возможных применений этого простого, но эффективного инструмента можно перечислить следующие: интерактивный 3D веб-дизайн, презентации продуктов, обучающие материалы, мультфильмы с возможностью выбора сюжетной линии, игры жанра point-and-click и любые другие приложения, которые ранее обычно создавались с помощью технологии Flash.

Тени
Значение падающих теней для восприятия изображения сложно переоценить. Тени предоставляют зрителю не только информацию о силуэте объектов, но и об их высоте и взаимном расположении, положении источника света и т.д. Система отрисовки теней, которая оставалась неизменной на протяжении долгого времени, в этом релизе совершила качественный скачок.

Для отрисовки теней на значительных пространствах в Blend4Web применяется методика каскадных карт теней (cascaded shadow maps, CSM). В этом релизе мы упростили настройку границ каскадов, реализовали плавные переходы между ними, а также добавили поддержку плавного исчезновения последнего каскада с расстоянием.

Смягченные тени не только выглядят более выразительно, но и скрывают неизбежную при использовании основанных на изображениях техник зубчатость краев. В этом релизе для отрисовки смягченных теней задействована техника percentage-closer filtering (PCF). Степень размытия теней может быть установлена отдельно для первого и последнего каскадов и автоматически интерполируется для остальных. Мы также реализовали поддержку смягченных теней для прозрачных объектов.
Изображение

И наконец, мы реализовали настройки для более эффективной борьбы с нежелательными артефактами самозатенения, которые проявляются, если объект одновременно отбрасывает и принимает тени. Также появилась возможность устанавливать размер карт теней.

Анимация
Чтобы скрыть резкий переход при переключении анимаций (например, персонаж бежал и внезапно остановился) ранее требовалось вручную создавать анимации соответствующих переходов. Теперь это в прошлом - мы реализовали API, с помощью которых Blend4Web осуществит смешивание анимаций автоматически.

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

Другие возможности
Активная позиция наших пользователей помогает нам добавлять и улучшать функционал движка. В частности, по просьбе наших пользователей мы добавили поддержку физики в стандартный веб-плеер (для варианта c раздельной загрузкой JSON-файлов). Кроме того, в веб-плеер добавлена возможность сокрытия панели управления. Также по запросу пользователей мы реализовали функцию автоматического применения масштаба к мешу объекта при экспорте.

Мы расширили функциональность нодового редактора, добавив несколько новых нод. В частности, нода LEVELS_OF_QUALITY позволяет художнику контролировать поведение материала при различных профилях качества. Повторное использование блоков нод теперь возможно благодаря поддержке нодовых групп. Теперь возможно отображать определенные прозрачные объекты поверх всех остальных (например, с целью нанесения меток на модели).

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

Ссылка | Комментарии [3]

29 авг 2014


Команда разработчиков Blend4Web представляет сообществу и партнерам очередной релиз открытого фреймворка для создания интерактивных 3D веб приложений.


В этом релизе: новая демо-сцена, улучшения в системе анимации и частиц, рефракция и процедурная генерация геометрии.


Основные изменения:


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


Изображение


Существенные улучшения анимационного движка. К каждому объекту теперь можно применить до 8 анимаций различных типов одновременно (объектная, скелетная, вертексная анимация, эмиссия частиц и параметризация источников звука). Реализована поддержка изменения скорости и направления ее воспроизведения (реверсивное воспроизведение).


Расширены возможности по управлению эмиссией и перемещением частиц в пространстве. Для изменения через API доступны размер частиц, начальная скорость и их количество. Новая функциональность позволяет программно реализовывать широкий спектр эффектов (например, разжигание костра, корректное расположение шлейфа дыма из выхлопной трубы и т.п.).


В интерфейс панели инструментов Blender'а добавлена кнопка для автоматического поиска и удаления неиспользуемых вертексных групп.

Изображение


Расширена функциональность и улучшена производительность нодовых материалов. Реализованы ноды Combine HSV и Separate HSV. За счет использования векторной арифметики для некоторых нод удалось достичь существенного уменьшения количества шейдерных инструкций. Расширен спектр поддерживаемого оборудования, в частности осуществлены коррекции для реализации WebGL в iOS. Реализована поддержка нодовых групп, что дает возможность повторного использования фрагментов нодового шейдера.


Добавлена поддержка эффекта рефракции на любых материалах - ранее рефракция была возможна только для специального материала воды. Для реализации эффекта введена специальная нода REFRACTION с параметрами для настройки.


Реализована настройка эффекта динамического отражения в нодовых материалах.


Улучшения системы уровней детализации (LOD). В интерфейс Blender'а добавлена настройка расстояния перекрытия смежных LOD-объектов для смягчения переходов между ними.


Добавлены низкоуровневые методы API для манипуляции геометрией в реальном времени, позволяющие процедурное генерирование мешей любой сложности (например, создавать конструкции à la Minecraft).


Выпущен ряд новых обучающих материалов по использованию движка в веб-разработке и созданию приложений-конструкторов.

Изображение


Проведена реструктуризация внешних API. Вместо использовавшихся ранее методов b4w теперь необходимо явно подключать модули с помощью функции b4w.require(). Аддоны были включены в состав "полной" версии движка b4w.full.min.js. Пользователи, которым не требуется использовать аддоны, могут воспользоваться более легкой версией b4w.min.js. Реализована возможность совместной компиляции движка и приложения с помощью файлов исключений Closure Compiler.


Различные исправления и улучшения. Реализован обход проблемы с локальным хранилищем в Chrome внутри iframe. Обработка ситуаций некорректного назначения параметров материалов. В web-плеере теперь можно использовать физику (но не в одиночных HTML файлах). Решена проблема экспорта из read-only директорий, запрещен экспорт на другой диск (в Windows). Некоторые улучшения графики демо-приложений.


Обновлена и дополнена документация.

Ссылка

Архив