Développer avec Unreal Engine pour Android XR

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

Unreal Engine support for XR development is built on the OpenXR standard, ensuring that OpenXR features supported for Android XR are natively supported in Unreal.

Ce guide vous explique comment :

  • Utiliser Unreal Engine avec Android XR
    • Principes de base d'Unreal Engine XR
    • Développer et publier des applications pour Android XR
    • Plug-ins Unreal Engine pour Android XR
    • Assistance
  • Entrée et interaction
  • Extensions acceptées

Utiliser Unreal Engine avec Android XR

Lorsque vous créez des applications Unreal pour Android XR, vous pouvez profiter des fonctionnalités de calcul spatial des dernières versions d'Unreal Engine 5. Unreal Engine 5 est compatible avec la spécification OpenXR de base, tandis que les extensions Android XR pour Unreal sont compatibles avec Android XR et d'autres extensions spécifiques pour vous aider à démarrer rapidement.

Principes de base d'Unreal Engine XR

Si vous débutez avec Unreal ou le développement XR, vous pouvez consulter la documentation de développement XR d'Unreal pour comprendre les concepts et les workflows de base. Voici quelques domaines clés à explorer :

Développer et publier des applications pour Android

Unreal Engine fournit une documentation complète pour le développement, la création, et la publication pour Android. Cette documentation couvre la gestion des autorisations Android dans le moteur, la configuration des paramètres de compilation Android (via Paramètres du projet > Plates-formes > Android) et l'utilisation de l'outil d'automatisation Unreal (UAT).

Consultez également la documentation sur l'empaquetage et la distribution d'applications pour Android XR pour connaître les exigences spécifiques qui s'appliquent aux applications spatiales qui sont distribuées sur le Google Play Store. Assurez-vous également que votre application respecte les consignes relatives à la qualité des expériences immersives afin d'offrir une expérience utilisateur cohérente et confortable sur Android XR.

Plug-ins Unreal Engine pour Android XR

Deux plug-ins principaux permettent de créer des applications Unreal pour Android XR. Ces plug-ins sont gérés via le menu Plug-ins (Édition > Plug-ins).

Plug-in Android XR OpenXR

Le plug-in Android XR OpenXR est l'interface principale du moteur qui ajoute la compatibilité avec Android XR à Unreal. Il implémente les extensions OpenXR requises pour le suivi spatial, la compréhension de l'environnement et la perception. Pour savoir comment ajouter et configurer ce plug-in, consultez la documentation OpenXR d'Unreal Engine.

Extensions Android XR pour Unreal

Les extensions Android XR pour Unreal complètent la compatibilité OpenXR de base, y compris des fonctionnalités supplémentaires pour vous aider à créer des expériences immersives telles que des données de maillage de la main avancées et des optimisations matérielles spécifiques. Pour savoir comment importer et configurer ce package, suivez le guide de démarrage rapide des extensions Android XR.

Assistance

Si vous rencontrez des problèmes, consultez la section d'assistance pour Unreal Engine sur notre page d'assistance.

Entrée et interaction

La création d'expériences spatiales interactives nécessite de mapper les mouvements physiques sur des actions numériques. Unreal Engine utilise le système d'entrée amélioré combiné à OpenXR pour gérer à la fois les contrôleurs de mouvement et le suivi des mains. En configurant des actions d'entrée et des contextes de mappage d'entrée, vous pouvez créer des interactions flexibles (comme la saisie, le pointage et la navigation dans l'interface utilisateur) qui fonctionnent de manière transparente sur différentes méthodes d'entrée Android XR.

Pour obtenir un guide complet sur la création de ces mécanismes, consultez la documentation d'Unreal Engine's sur la création d'expériences XR interactives.

Android XR est compatible avec les méthodes d'interaction spécifiques suivantes dans Unreal Engine :

Profils d'interaction

Vous pouvez configurer des profils d'interaction dans les paramètres de votre projet, dans la section OpenXR. Cela permet à votre application de maintenir un mappage d'entrée cohérent sur différents contrôleurs et méthodes de suivi.

Interaction manuelle

L'interaction manuelle est fournie par l'extension OpenXR Hand Tracking. Vous pouvez accéder aux données et aux poses des articulations de la main via les composants de suivi XR dans Blueprints ou C++.

Interaction par regard

Les données de regard peuvent être récupérées en tant que pose d'entrée standard, ce qui vous permet de gérer la mise au point de l'interface utilisateur ou les fonctionnalités de présence sociale. Cela nécessite l'autorisation android.permission.EYE_TRACKING_FINE.

Suivi du visage

Accédez aux données d'expression faciale en temps réel pour animer des avatars ou générer des interactions sociales. Cela utilise l'XR_ANDROID_face_tracking extension.

Extensions acceptées

Les extensions OpenXR suivantes sont compatibles lors du développement pour Android XR dans Unreal :

Fonctionnalité Chaîne d'extension OpenXR Fournis par

Persistance de l'ancre de l'appareil

XR_ANDROID_device_anchor_persistence

Extensions Android XR pour Unreal

Raycast

XR_ANDROID_raycast

Extensions Android XR pour Unreal

Éléments suivis (plans/profondeur)

XR_ANDROID_trackables

Extensions Android XR pour Unreal

Suivi des objets

XR_ANDROID_trackables_object

Extensions Android XR pour Unreal

Maillage de la scène

XR_ANDROID_scene_meshing

Extensions Android XR pour Unreal

Suivi du visage

XR_ANDROID_face_tracking

Extensions Android XR pour Unreal

Suivi oculaire

XR_ANDROID_eye_tracking

Extensions Android XR pour Unreal

État de la caméra réelle

XR_ANDROID_passthrough_camera_state

Extensions Android XR pour Unreal

Calque de maillage réel

XR_ANDROID_composition_layer_passthrough_mesh

Extensions Android XR pour Unreal

Texture de profondeur

XR_ANDROID_depth_texture

Extensions Android XR pour Unreal

Estimation de la lumière

XR_ANDROID_light_estimation

Extensions Android XR pour Unreal

Métriques de performances

XR_ANDROID_performance_metrics

Extensions Android XR pour Unreal

Résolution recommandée

XR_ANDROID_recommended_resolution

Extensions Android XR pour Unreal

Interaction manuelle

XR_EXT_hand_interaction

Extensions Android XR pour Unreal

Utilitaires de débogage

XR_EXT_debug_utils

OpenXR natif d'Unreal

Paramètres de performances

XR_EXT_performance_settings

OpenXR natif d'Unreal

Fréquence d'actualisation de l'affichage

XR_FB_display_refresh_rate

OpenXR natif d'Unreal

Maillage de suivi des mains

XR_FB_hand_tracking_mesh

Extensions Android XR pour Unreal

Déformation spatiale

XR_FB_space_warp

OpenXR natif d'Unreal

Calque de composition Equirect2

XR_KHR_composition_layer_equirect2

OpenXR natif d'Unreal

Paramètres de thread Android

XR_KHR_android_thread_settings

OpenXR natif d'Unreal

Réduction globale de la luminosité réelle

XR_ANDROID_global_passthrough_dimming

Extensions Android XR pour Unreal (version stable 1.0.0)

Propriétés d'extension système

XR_ANDROID_enumerate_system_extension_properties

Extensions Android XR pour Unreal (version stable 1.0.0)

Entités spatiales et suivi des marqueurs

XR_ANDROID_trackables_marker

Extensions Android XR pour Unreal (version stable 1.0.0)

Les extensions sont fournies par l'une des sources suivantes :

  • Extensions Android XR pour Unreal : il s'agit d'extensions spécifiques à Google (ANDROID) développées pour la plate-forme Android XR. Pour utiliser ces fonctionnalités spatiales, vous devez installer et activer le plug-in Extensions Android XR dans votre fichier .uproject
  • OpenXR natif d'Unreal : ces fonctionnalités exploitent les extensions standards Khronos (KHR), Extension (EXT) et Meta (FB) qui sont déjà intégrées et gérées directement dans le plug-in OpenXR de base d'Unreal Engine.