Créer des applications avec des extensions OpenXR compatibles

Appareils XR concernés
Ces conseils vous aident à créer des expériences pour ces types d'appareils XR.
Casques XR
Lunettes XR filaires

Android XR est compatible avec OpenXR via la spécification OpenXR 1.1 et une longue liste d'extensions de fournisseurs tiers. Ces extensions vous offrent une expérience familière lorsque vous développez pour XR. Certaines de ces fonctionnalités nécessitent des autorisations d'exécution Android. Si vous souhaitez créer directement des applications sur les API OpenXR, vous trouverez les fichiers d'en-tête requis dans le dépôt jetpack-xr-natives.

Extensions de fournisseur Android XR

Nom d'extension

Description

Version de l'API Spatial

XR_ANDROID_anchor_sharing_export

Les ancres créées par une application à l'aide de XR_ANDROID_trackables sont liées à une session spécifique et ne sont donc pas visibles par d'autres...

v1

XR_ANDROID_body_tracking

Utilise l'IK pour déterminer la position du corps en fonction de celle de la tête et des mains.
Autorisations : Body Tracking

v2

XR_ANDROID_composition_layer_passthrough_mesh

Pour les appareils compatibles avec plusieurs modes de fusion de l'environnement.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_depth_texture

Cette extension permet à l'application de demander des cartes de profondeur de l'environnement réel autour du casque et d'interroger...
Autorisations : SCENE_UNDERSTANDING_FINE

v1

XR_ANDROID_device_anchor_persistence

Cette extension permet à l'application de persister.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_enumerate_system_extension_properties

Cette extension permet aux applications de déterminer quelles extensions sont compatibles avec la configuration système actuelle.

v3

XR_ANDROID_eye_tracking

Cette extension permet aux applications d'obtenir la position et l'orientation des yeux de l'utilisateur, ainsi que l'état du suivi oculaire.
Autorisations : EYE_TRACKING_FINE

v1

XR_ANDROID_face_tracking

Cette extension permet aux applications d'obtenir les pondérations des formes de mélange et d'afficher les expressions faciales dans les expériences XR.
Autorisations : FACE_TRACKING

v1

XR_ANDROID_face_tracking_data_source

Cette extension permet aux applications d'obtenir des données de suivi du visage à partir de plusieurs sources de données.
Autorisations : FACE_TRACKING, RECORD_AUDIO

v3

XR_ANDROID_hand_mesh

Cette extension permet d'activer les entrées de suivi des mains représentées sous la forme d'un maillage dynamique des mains.
Autorisations : HAND_TRACKING

v1

XR_ANDROID_light_estimation

Cette extension permet à l'application de demander des données représentant l'éclairage de l'environnement réel autour du casque.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_light_estimation_cubemap

Cette extension s'appuie sur l'extension XR_ANDROID_light_estimation de base.
Autorisations : SCENE_UNDERSTANDING_FINE

v3

XR_ANDROID_mouse_interaction

Cette extension fournit un XrPath pour obtenir l'entrée de la souris et définit une pose d'action couramment utilisée pour les profils de souris utilisateur.

v1

XR_ANDROID_passthrough_camera_state

Le démarrage de la caméra de transmission peut prendre du temps et elle peut ne pas être immédiatement disponible.

v1

XR_ANDROID_performance_metrics

Cette extension fournit des API permettant d'énumérer et d'interroger divers compteurs de métriques de performances de l'appareil XR actuel.

v1

XR_ANDROID_raycast

Cette extension permet à l'application d'effectuer des raycasts sur les éléments trackables de l'environnement.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_recommended_resolution

Cette extension permet au runtime d'informer l'application lorsque la résolution recommandée change.

v1

XR_ANDROID_recommended_settings

L'environnement par défaut de l'utilisateur peut se trouver dans différents états en combinant un mode de fusion et une modalité d'entrée.

v1

XR_ANDROID_scene_meshing

Cette extension est destinée à fournir des maillages qui représentent approximativement les objets physiques dans l'environnement de l'utilisateur.

v1

XR_ANDROID_spatial_anchor_space

La fonction xrCreateSpatialAnchorEXT définie dans l'extension XR_EXT_spatial_anchor permet aux applications de créer des ancres spatiales…
Autorisations : SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_spatial_annotation_tracking

Cette extension fournit la fonctionnalité de suivi des annotations pour l'extension <<XR_EXT_spatial_entity>> afin de suivre divers...
Autorisations : SCENE_UNDERSTANDING_FINE

v3

XR_ANDROID_spatial_component_subsumed_by

Cette extension s'appuie sur XR_EXT_spatial_entity et fournit un nouveau composant pour XR_SPATIAL_CAPABILITY_PLANE_TRACKING_EXT afin de…
Autorisations : SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_spatial_discovery_raycast

Cette extension s'appuie sur XR_EXT_spatial_entity et fournit une fonctionnalité de raycast pour les capacités spatiales existantes.
Autorisations : SCENE_UNDERSTANDING_FINE

v3

XR_ANDROID_spatial_entity_bound_anchor

Cette extension permet aux applications de créer des ancres et de les associer à des entités spatiales.
Autorisations : SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_spatial_object_tracking

Cette extension s'appuie sur XR_EXT_spatial_entity et définit une capacité spatiale pour le suivi d'un ensemble d'entités physiques prédéfinies...
Autorisations : SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_trackables

Cette extension permet à l'application d'accéder aux éléments suivables de l'environnement physique.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_trackables_image

Cette extension permet de suivre les images planes spécifiées par des ensembles d'images de référence d'entrée.
Autorisations : SCENE_UNDERSTANDING_COARSE

v3

XR_ANDROID_trackables_marker

Cette extension permet le suivi des marqueurs physiques.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_trackables_object

Cette extension permet le suivi des objets physiques.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_trackables_qr_code

Cette extension permet le suivi des codes QR physiques et le décodage des données des codes QR.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_ANDROID_unbounded_reference_space

Cette extension permet aux applications de créer un espace de référence XR_REFERENCE_SPACE_TYPE_UNBOUNDED_ANDROID.

v1

Extensions tierces

Nom d'extension

Description

Version de l'API Spatial

XR_MND_headless

Certaines applications peuvent avoir besoin d'accéder aux appareils d'interaction XR sans présenter de contenu d'image sur l'écran ou les écrans.

v1

XR_KHR_binding_modification

Cette extension ajoute une structure facultative qui peut être incluse dans la chaîne XrInteractionProfileSuggestedBinding::next transmise…

v1

XR_EXT_debug_utils

En raison de la nature de l'interface OpenXR, très peu d'informations sur les erreurs sont disponibles pour le développeur et l'application.

v1

XR_EXT_hand_tracking

Cette extension permet aux applications de localiser les articulations individuelles des entrées de suivi des mains.
Autorisations : HAND_TRACKING

v1

XR_EXT_performance_settings

Cette extension définit une API permettant à l'application de fournir des indications de performances au runtime et au runtime d'envoyer...

v1

XR_FB_display_refresh_rate

Sur les plates-formes qui permettent d'ajuster dynamiquement la fréquence d'actualisation de l'écran.

v1

XR_FB_swapchain_update_state

Cette extension permet à l'application de modifier et d'interroger un état mutable spécifique associé à une chaîne d'échange.

v1

XR_FB_foveation

Dans le contexte de la XR, la fovéation est une technique de rendu qui permet à la zone d'une image proche du point focal ou de la fovéa de...

v1

XR_FB_foveation_configuration

Sur les casques Facebook, les développeurs peuvent créer des profils de fovéation générés par le runtime pour les propriétés optiques et les performances.

v1

XR_FB_foveation_vulkan

L'API graphique Vulkan nécessite qu'une image soit appliquée à la chaîne d'échange pour appliquer un motif de fovéation.

v1

XR_FB_space_warp

Cette extension permet d'activer la technologie Space Warp dans l'application.

v1

XR_KHR_opengl_es_enable

Cette extension doit être fournie par les environnements d'exécution compatibles avec les applications utilisant les API OpenGL ES pour le rendu.

v1

XR_KHR_android_create_instance

Lorsque l'application crée un objet XrInstance sur les systèmes Android.

v1

XR_KHR_android_surface_swapchain

Une activité courante dans la XR consiste à afficher un flux d'images.

v1

XR_KHR_android_thread_settings

Pour que la XR soit confortable, il est important que les applications fournissent des frames rapidement et de manière cohérente.

v1

XR_KHR_composition_layer_color_scale_bias

L'échelle de couleurs et le biais sont appliqués à la couleur d'un calque lors de la composition, après sa conversion en représentation alpha prémultipliée.

v1

XR_KHR_composition_layer_cube

Cette extension ajoute un type de calque supplémentaire qui permet l'échantillonnage direct à partir de cubemaps.

v1

XR_KHR_composition_layer_cylinder

Cette extension ajoute un type de calque supplémentaire où le moteur d'exécution XR doit mapper une texture provenant d'une chaîne d'échange sur l'intérieur…

v1

XR_KHR_composition_layer_depth

Cette extension définit un type de calque supplémentaire qui permet aux applications d'envoyer des images de profondeur en même temps que des images couleur dans...

v1

XR_KHR_composition_layer_equirect

Cette extension ajoute un type de calque supplémentaire où le runtime XR doit mapper une image codée équirectangulaire provenant d'un...

v1

XR_KHR_composition_layer_equirect2

Cette extension ajoute un type de calque supplémentaire où le runtime XR doit mapper une image codée équirectangulaire provenant d'un...

v1

XR_KHR_convert_timespec_time

Cette extension fournit deux fonctions permettant de convertir le temps monotone timespec et XrTime.

v1

XR_KHR_vulkan_enable

Cette extension permet d'utiliser l'API graphique Vulkan dans un environnement d'exécution OpenXR.

v1

XR_KHR_vulkan_enable2

Cette extension permet d'utiliser l'API graphique Vulkan dans un environnement d'exécution OpenXR.

v1

XR_KHR_loader_init

Sur certaines plates-formes, le chargeur doit être initialisé avec des paramètres spécifiques à la plate-forme avant que le chargement puisse avoir lieu.

v1

XR_KHR_loader_init_android

Sur Android, certaines implémentations de chargeur nécessitent que l'application fournisse des informations supplémentaires lors de l'initialisation.

v1

XR_KHR_swapchain_usage_input_attachment_bit

Cette extension permet à une application de spécifier que les images de la chaîne d'échange doivent être créées de manière à pouvoir être utilisées comme…

v1

XR_EXT_dpad_binding

Cette extension permet à l'application d'associer une ou plusieurs actions numériques à un pavé tactile ou à un joystick comme s'il s'agissait d'un pavé directionnel.

v1

XR_EXT_uuid

Cette extension définit un identifiant unique universel conforme à la RFC 4122.

v1

XR_FB_composition_layer_depth_test

Cette extension permet la composition de calques testée en profondeur.

v1

XR_EXT_eye_gaze_interaction

Cette extension fournit un XrPath permettant d'obtenir des données de suivi du regard à partir d'un appareil de suivi oculaire pour activer les interactions par le regard.
Autorisations : EYE_TRACKING_FINE

v1

XR_EXT_hand_interaction

Cette extension définit quatre poses d'action courantes pour tous les profils d'interaction manuelle de l'utilisateur, y compris le suivi des mains…

v1

XR_KHR_visibility_mask

Cette extension permet de fournir un masque de dessin par vue pour les applications.

v1

XR_META_foveation_eye_tracked

Le rendu fovéal avec suivi du regard affiche une densité de pixels plus faible dans la périphérie du regard de l'utilisateur.
Autorisations : EYE_TRACKING_FINE

v1

XR_FB_hand_tracking_aim

L'extension XR_EXT_hand_tracking fournit une liste de poses d'articulations de la main qui représentent la configuration actuelle de...
Autorisations : HAND_TRACKING

v1

XR_EXT_palm_pose

Cette extension définit un nouvel "identifiant de pose standard" pour les profils d'interaction, nommé "palm_ext".

v1

XR_VARJO_foveated_rendering

Les casques Varjo sont équipés d'écrans à très haute densité de pixels au centre.
Autorisations : EYE_TRACKING_FINE

v1

XR_VARJO_quad_views

Cette extension ajoute un nouveau type de configuration de vue : XR_VIEW_CONFIGURATION_TYPE_PRIMARY_QUAD_VARJO à XrViewConfigurationType...

v1

XR_META_vulkan_swapchain_create_info

À l'aide de cette extension, une application basée sur Vulkan peut transmettre des VkImageCreateFlags ou VkImageUsageFlags supplémentaires en...

v1

XR_FB_hand_tracking_mesh

L'extension XR_EXT_hand_tracking fournit une liste de poses d'articulations de la main, mais aucun mécanisme pour afficher un maillage de main avec skin.
Autorisations : HAND_TRACKING

v1

XR_FB_composition_layer_image_layout

Cette extension ne définit pas de nouveau type de calque de composition.

v1

XR_KHR_maintenance1

XR_KHR_maintenance1 ajoute un ensemble de fonctionnalités mineures qui ont été intentionnellement omises ou oubliées dans la spécification d'origine...

v1

XR_FB_composition_layer_settings

Cette extension permet aux applications de demander l'utilisation d'options de traitement telles que l'amélioration de la netteté ou le suréchantillonnage sur un...

v1

XR_KHR_locate_spaces

Cette extension introduit la fonction xrLocateSpacesKHR.

v1

XR_EXT_local_floor

La spécification OpenXR de base contient deux types XrSpace d'espace de référence verrouillé dans le monde dans XrReferenceSpaceType.

v1

XR_EXT_spatial_marker_tracking

Cette extension s'appuie sur XR_EXT_spatial_entity et permet aux applications de détecter et de suivre les marqueurs dans leur environnement.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_EXT_spatial_persistence

Cette extension permet aux applications de découvrir et de corréler des entités spatiales entre les sessions d'application.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_EXT_spatial_anchor

Cette extension s'appuie sur XR_EXT_spatial_entity et permet aux applications de créer des ancres spatiales.
Autorisations : SCENE_UNDERSTANDING_COARSE

v1

XR_EXT_spatial_plane_tracking

Cette extension s'appuie sur XR_EXT_spatial_entity et définit la capacité spatiale de suivi des plans pour le framework d'entités spatiales.

v1

XR_EXT_spatial_entity

Cette extension présente les concepts et les bases de la compréhension des scènes et du raisonnement spatial dans OpenXR.

v1

XR_EXT_future

Dans les systèmes de réalité étendue, certaines opérations sont de longue durée et ne se terminent pas raisonnablement dans une boucle de frame normale.

v1

XR_FB_color_space

Les appareils de réalité étendue peuvent utiliser un espace colorimétrique différent de celui de nombreux écrans utilisés pour le développement.

v1

XR_EXT_composition_layer_inverted_alpha

Cette extension fournit un indicateur qui, lorsqu'il est appliqué à un calque de composition, inverse l'interprétation de la valeur alpha dans...

v1

XR_EXT_frame_synthesis

Cette extension permet d'activer la synthèse de frames sur les applications en fonction des données fournies par l'application.

v3

XR_QCOM_trackables_image_operations

Fournit des opérations de suivi d'images Qualcomm pour les éléments à suivre.

v3

XR_QCOM_trackables_qr_code_operations

v3

XR_EXT_user_presence

Cette extension introduit un nouvel événement pour notifier lorsque le système détecte un changement de présence de l'utilisateur.

v3

XR_KHR_extended_struct_name_lengths

Cette extension augmente la taille maximale des noms de structures et fournit une nouvelle fonction pour accéder à ces nouveaux noms étendus.

v3

XR_EXT_interaction_profile_battery_state_display

XR_EXT_interaction_profile_battery_state_display fournit aux applications un mécanisme permettant d'interroger l'environnement d'exécution sur l'état de la batterie…

v3


OpenXR™ et le logo OpenXR sont des marques déposées appartenant à The Khronos Group Inc. et sont enregistrées en tant que marques déposées en Chine, dans l'Union européenne, au Japon et au Royaume-Uni.