Пазлы виртуальной и дополненной реальности
Эти пазлы используются для создания приложений дополненной реальности (AR) и виртуальной реальности (VR), работающих с использованием технологии WebXR.
Для получения дополнительной информации о поддерживаемых устройствах виртуальной реальности и работе с данными пазлами смотрите соответствующий раздел данного руководства пользователя.
Содержание
Перечень пазлов
check VR mode
Проверяет наличие системы виртуальной реальности. В случае успеха запускаются пазлы в слоте if available do. В противном случае, если браузер не поддерживает VR или оборудование не найдено, запускаются пазлы в слоте if unavailable do.
Для получения дополнительной информации по созданию приложений виртуальной реальности обратитесь к соответствующему разделу.
enter VR mode
Активирует режим виртуальной реальности. Пазлы, размещенные в слотах on enter do и on exit do, срабатывают при входе или выходе из VR-режима. Пазлы, размещенные в слоте if unavailable do, срабатывают, если VR-сеанс не доступен.
Режимы VR-позиционирования:
- sitting or standing
- Неподвижная камера, расположенная на некоторой высоте над землей. Центр мировой системы координат располагается в ногах пользователя. Этот режим рекомендуется к использованию в большинстве случаев, поскольку он совместим с большинством устройств, присутствующих на рынке, например Meta Quest 1-3 или HTC Vive.
- looking around
- Неподвижная камера, расположенная в нулевых координатах.
- room
- Свободная камера, расположенная внутри определенных границ, в частности комнаты.
- walking
- Свободная камера, которую можно перемещать без ограничений.
- viewer locked
- Неподвижная камера, расположенная в нулевых координатах. Все содержимое является родительским для вида.
Чтобы правильно управлять камерой в режиме VR, при входе в режим VR обязательно привяжите ее к какому-либо пустому или реальному объекту, расположенному в выбранном вами 3D-редакторе. Это необходимо потому, что в VR-сессии камера полностью контролируется, а вы можете перемещать только пустой объект, к которому привязана камера.
Начиная с релиза Verge3D 4.3, вы также можете использовать пазл camera control object вместо ручного создания управляющего объекта.
check AR mode
Проверяет систему дополненной реальности. В случае успеха запускаются пазлы в слоте if available do. В противном случае, если браузер не поддерживает AR или оборудование AR не найдено, срабатывают пазлы в слоте if unavailable do. Пазлы в слоте else if Apple USDZ do запускаются, если WebXR-совместимое оборудование не найдено, но система поддерживает основанную на USDZ технологию Apple AR Quick Look.
Для получения дополнительной информации по созданию приложений дополненной реальности обратитесь к соответствующему разделу.
enter AR mode
Активирует режим дополненной реальности. Пазлы, размещенные в слотах on enter do и on exit do, срабатывают при входе или выходе из режима AR. Пазлы, размещенные в слоте if unavailable do, срабатывают, если не удалось установить сеанс AR.
Свойство allow HTML используется для отображения HTML-контента в режиме AR. Если указано, содержимое элемента canvas container будет отображаться поверх 3D-контента. Этот параметр считается экспериментальным.
Режимы позиционирования AR:
- looking around
- Неподвижная камера, расположенная в начале координат. Этот режим рекомендуется для использования в большинстве случаев, в частности для расстановки моделей на горизонтальных или вертикальных поверхностях.
- sitting or standing
- Неподвижная камера, расположенная на некоторой высоте над землей.
- room
- Мобильная камера, расположенная внутри некоторых границ, таких как комната.
- walking
- Мобильная камера без ограничений.
- viewer locked
- Неподвижная камера, расположенная в нулевых координатах. Все содержимое является родительским для вида.
detect surface AR
Обнаруживает поверхности в режиме дополненной реальности путем направления луча вперед. При пересечении этот луч запускает пазлы в слоте on intersection do. Если пересечения не произошло или устройство находится в состоянии «разогрева», срабатывают пазлы в слоте if missed do.
Параметр smooth используется для того, чтобы сделать движение маркера более плавным. Укажите значение 0 для отключения сглаживания, значение, близкое к 1, для максимального сглаживания.
AR hit point
Координаты точки поверхности, обнаруженные с помощью пазла detect surface AR. Могут быть отдельными значениями X, Y, Z или вектором XYZ.
AR hit normal
Координаты нормали к поверхности, обнаруженные с помощью пазла detect surface AR. Могут быть отдельными значениями X, Y, Z или вектором XYZ.
camera control object
Вернуть объект, управляющий камерой в VR/AR-режиме. Перемещая этот объект (например пазлом set transform), вы можете смещать камеру относительно исходного положения. Использование данного объекта избавляет от необходимости привязывать камеру к вспомогательному объекту-заглушке вручную, поскольку данный объект создаётся и уничтожается автоматически при активации/деактивации WebXR-сессии.
on session event
Захватывает событие VR-сессии, сгенерированное устройством виртуальной реальности (например, гарнитурой или кнопкой контроллера), и запускает пазлы, указанные в слоте do.
События:
- select — срабатывает, когда пользователь нажимает и отпускает кнопку основного контроллера.
- selectstart — срабатывает при нажатии пользователем кнопки основного контроллера.
- selectend — срабатывает, когда пользователь отпускает основную кнопку контроллера.
- squeeze — срабатывает, когда пользователь сжимает и разжимает контроллер.
- squeezestart — срабатывает, когда пользователь сжимает контроллер.
- squeezeend — срабатывает, когда пользователь разжимает контроллер.
- connected — срабатывает при подключении VR-контроллера, т.е. при входе в VR-сеанс. Используйте это событие для инициализации любой логики контроллера.
- disconnected — срабатывает при отключении VR-контроллера.
traverse controllers
Перебирает все подключенные контроллеры, выполняя пазлы, указанные в слоте do.
get controller property
Получить свойство контроллера.
Доступные свойства:
- object — пустой объект, представляющий контроллер.
- ray/reticle — луч контроллера или объект прицела.
- handedness — ориентация контроллера, одна из: "left" (левый контроллер), "right" (правый контроллер), "none" (не указано, вероятно, контроллер, установленный на голове).
- target ray mode — один из: "gaze" (для устройств, типа cardboard), "tracked-pointer" (для обычных ручных контроллеров), "screen" (событие связано с вводом на холсте, в настоящее время не реализовано).
- profiles — список имен профилей контроллеров.
- gamepad index — индекс геймпада контроллера, который может быть передан в пазл get gamepad property для получения дополнительной информации от вашего контроллера, такой как состояние кнопок/осей.
end AR/VR session
Принудительно завершить сеанс виртуальной или дополненной реальности.
Проблемы с пазлами?
Обращайтесь за помощью на наш форум!