Выпуск 0.9.0
Этот выпуск включает первые значительные обновления в области рендеринга и важные улучшения возможностей рендеринга, поддержку iOS и множество исправлений ошибок и улучшений UX.
Потоковая передача текстур
Потоковая передача текстур наконец освобождает нас от ограничений на несжатые текстуры и теперь динамически передаются на GPU в зависимости от того, что необходимо для рендеринга текущего вида пользователя.
Это улучшает использование памяти GPU, время загрузки и позволяет использовать больше текстур более высокого разрешения.
Пример потоковой передачи текстуры размером 16k x 8k.
Полноэкранные рисунки
Полноэкранные рисунки, такие как Sky, предоставляют удобный и эффективный способ добавления фонового изображения, эквиректугольной среды или градиента к вашему опыту.
Прожекторы
Прожекторы предоставляют еще больше контроля над освещением в сцене.
Основанные на физике шейдеры
Основанное на физике шейдерирование позволяет рендерить более реалистичные материалы, такие как металлы и пластики.

Рендеринг текста с помощью Slug
С нашей интеграцией Slug text rendering middleware, мы теперь имеем передовой рендеринг текста. Текст остается четким и ясным в VR, улучшая читаемость и устраняя визуальные артефакты предыдущего метода. Эта интеграция прокладывает путь для более продвинутого рендеринга текста в ближайшем будущем.

Поддержка Safari 15 на iOS
В этом выпуске также добавлена поддержка Safari 15 для настольных и iOS устройств. Это особенно важно для Web AR контента.
Размер пакета
Мы добавили все эти новые функции, сохраняя размер бинарного файла почти без изменений и значительно уменьшив размер установщика на всех платформах! Кроме того, существенно уменьшены размеры сеток и реализация потоковой передачи текстур улучшила время загрузки еще больше.
Список изменений
Редактор
- Переключился на контуры для выделения
- Исправлены результаты тайминга Profiler GPU
- Разблокирована навигация в представлении Profiler
- Исправлено аварийное завершение программы при уменьшении изображения для определенных размеров
- Исправлена остаточная поворотная матрица Эйлера
- Исправлены различные проблемы с процессом входа
- Исправлены различные сбои и проблемы, связанные с перестановкой конвейера
- Удалены недействительные параметры смешивания
- Разделены параметры смешивания альфа и RGB
- Переключился на полное инстанцирование файлов сцены при импорте, что позволяет несколько раз импортировать один и тот же файл
- Разрешено перетаскивание материалов на объекты сцены
- Разрешено перетаскивание файлов JavaScript в список компонентов
- Правильный выход, если
--project
не удалось загрузиться в командной строке - Добавлена поддержка
MOZ_lightmap
для импорта GLTF - Добавлена поддержка материала PBR для импорта GLTF
- Добавлена поддержка импорта изображений
.webp
- Исправлена бесконечная фаза повторной упаковки при добавлении пустого пути в список скриптов
- Значительно улучшено сжатие сеток в файлах .bin
- Обеспечено, чтобы даже более крупные проекты паковались менее чем за 1 секунду
- Исправлен баг, при котором изображения исчезали, когда расширение было в верхнем регистре
- Исправлены различные проблемы с обновлением визуализации отладки PhysX
- Исправлены незначительные интуитивные проблемы с отменой с помощью инструмента трансформации
- Добавлен удобный переключатель для симуляции PhysX в панели инструментов Scene view
- Улучшена скорость загрузки кеша сжатых текстур
- Генерирование тангенсов для сеток, которые были импортированы без них
- Исправлено некорректное обновление заголовка окна в соответствии с именем проекта
- Исправлено удаление директории в списке директорий в браузере активов
- Удалено уведомление при сохранении проекта
- MacOS
- Исправлено выполнение скриптов сборки npm для упаковки
- Исправлен крах во время сжатия текстуры из-за использования неподдерживаемого формата BC7
- Исправлены другие различные сбои
Runtime
- Добавлена ошибка при загрузке файлов .bin, упакованных в более старых версиях
- Исправлена поддержка Safari на iOS
Engine
- Переключился на Wonderland Texture Streaming для сжатых текстур
- Позволяет новые размеры атласов сжатых текстур до 32k x 32k
- Добавлена поддержка mip-карт для сжатых текстур
- Снижает использование памяти GPU и значительно улучшает скорость чтения текстур
- Снимает исходное время загрузки сцены
- Переключился на рендеринг текста с помощью Slug
- Еще больше улучшено количество объектов per-дэрокалл
- Добавлена поддержка импортированных lightmap в Phong
- Добавлена поддержка вторичных UV
- Добавлены полноэкранные проходы
- Sky рендерит эквиректугольное изображение
- Фон рендерит фоновое изображение и/или цветовой градиент
- Добавлен “Physical” шейдер для материалов PBR
- Добавлены прожекторы
- Полное удаление объектов из файлов проекта при удалении
- Реализованы настройки материалов PhysX для каждого актера
JS API
- Исправлено, что установка
ViewComponent.near
иViewComponent.far
не имела эффекта в XR сессиях - Переименовано
PhysXComponent.restitution
вPhysXComponent.bounciness
- Исправлено, что
PhysXComponent.rayCast
не возвращает несколько результатов - Добавлены
Mesh.getBoundingSphere()
иMesh.destroy()
- Добавлен новый API для изменения данных сетки в runtime
- Разрешено передавать дополнительные аргументы в
webxr_request_session_func
, например, для использования DOM overlay
Компоненты
- video-texture: Исправлено, что отключение автовоспроизведения все равно воспроизводит видео
- device-orientation-look: Исправлена некорректная ротация в зависимости от начальной ориентации