Сборка с использованием поддерживаемых расширений OpenXR.

Android XR поддерживает OpenXR благодаря спецификации OpenXR 1.1 и обширному списку расширений сторонних разработчиков. Использование этих расширений обеспечивает привычный интерфейс разработки для XR. Некоторые из этих возможностей требуют разрешений среды выполнения Android . Если вы планируете разрабатывать приложения непосредственно на основе API OpenXR, необходимые заголовочные файлы можно найти в этом репозитории .

Расширения поставщика Android XR

Имя расширения

Описание

XR_ANDROID_composition_layer_passthrough_mesh

Позволяет приложению проецировать сквозные текстуры на произвольную геометрию через дополнительный композиционный слой. Для этого расширения требуется android.permission.SCENE_UNDERSTANDING_COARSE .

XR_ANDROID_depth_texture

Обеспечивает точную и плавную глубину для окклюзии, тестов попадания и других задач, использующих точную геометрию сцены, например, для обнаружения поддельных лиц. Предоставляет текстуру глубины низкого разрешения и достоверность сцены с учетом текущего положения камеры/глаз. Для этого расширения требуется android.permission.SCENE_UNDERSTANDING_FINE .

XR_ANDROID_device_anchor_persistence

Позволяет приложению сохранять, извлекать и отменять якоря на текущем устройстве, между приложениями и сеансами устройства. Для этого расширения требуется android.permission.SCENE_UNDERSTANDING_COARSE .

XR_ANDROID_eye_tracking

Позволяет приложению получать данные о положении и ориентации глаз пользователя, что позволяет сделать позу глаз и отображение статуса на аватарах более реалистичными. Не используйте это расширение для других целей отслеживания глаз. Для взаимодействия следует использовать XR_EXT_eye_gaze_interaction . Для этого расширения требуется android.permission.EYE_TRACKING_COARSE или android.permission.EYE_TRACKING_FINE .

XR_ANDROID_face_tracking

Позволяет приложению получать веса смешанных форм и отображать выражения лиц в XR-экспериментах. Для этого расширения требуется android.permission.FACE_TRACKING .

XR_ANDROID_hand_mesh

Позволяет обрабатывать данные отслеживания руки, представленные в виде динамической сетки руки. Это расширение предназначено для предоставления буферов вершин и индексов для сетки персонализированного представления рук пользователя. Для отслеживания суставов руки используется XR_EXT_hand_tracking , а для взаимодействий XR_EXT_hand_interaction . Для этого расширения требуется android.permission.HAND_TRACKING .

XR_ANDROID_light_estimation

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

XR_ANDROID_mouse_interaction

Это расширение представляет новый профиль взаимодействия, специально разработанный для устройств с мышью, для ввода данных через систему действий OpenXR. Позволяет использовать распространённые позы действий для пользовательских профилей мыши, включая как устройства с мышью, так и трекпады. Это расширение предназначено для взаимодействия с объектами посредством указателя мыши в трёхмерном пространстве. Например, использование виртуальной лазерной указки для прицеливания в виртуальную кнопку на стене — это взаимодействие, подходящее для позы «прицеливания».

XR_ANDROID_passthrough_camera_state

Обеспечивает включенное, инициализирующее или выключенное состояние для сквозной камеры.

XR_ANDROID_performance_metrics

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

XR_ANDROID_raycast

Это расширение позволяет приложению выполнять лучевые трансляции по отслеживаемым объектам в окружающей среде. Для работы расширения требуется android.permission.SCENE_UNDERSTANDING_COARSE .

XR_ANDROID_scene_meshing

Позволяет приложению получать семантическую 3D-сетку реального мира в режиме реального времени. Для этого расширения требуется android.permission.SCENE_UNDERSTANDING_FINE .

XR_ANDROID_trackables

Это расширение позволяет приложению получать доступ к отслеживаемым объектам, таким как самолёты, из физической среды, и создавать якорные точки, прикреплённые к отслеживаемым объектам. Для этого расширения требуется android.permission.SCENE_UNDERSTANDING_COARSE .

XR_ANDROID_trackables_object

Обеспечивает поддержку отслеживания физических объектов, таких как клавиатура и мышь, в сцене. Для этого расширения требуется android.permission.SCENE_UNDERSTANDING_COARSE .

XR_ANDROID_unbounded_reference_space

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

Другие поддерживаемые расширения

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


OpenXR™ и логотип OpenXR являются товарными знаками компании Khronos Group Inc. и зарегистрированы в качестве товарных знаков в Китае, Европейском Союзе, Японии и Великобритании.