Sviluppare con Unreal Engine per Android XR

Dispositivi XR applicabili
Queste indicazioni ti aiutano a creare esperienze per questi tipi di dispositivi XR.
Visori XR
Occhiali XR con cavo

Il supporto di Unreal Engine per lo sviluppo XR si basa sullo standard OpenXR, garantendo che le funzionalità OpenXR supportate per Android XR siano supportate nativamente in Unreal.

Segui questa guida per scoprire di più su:

  • Supporto di Unreal Engine per Android XR
    • Nozioni di base su Unreal Engine XR
    • Sviluppo e pubblicazione di app per Android XR
    • Plug-in Unreal Engine per Android XR
    • Richiedere assistenza
  • Input e interazione
  • Estensioni supportate

Supporto di Unreal Engine per Android XR

Quando crei app Unreal per Android XR, puoi sfruttare le funzionalità di spatial computing delle ultime versioni di Unreal Engine 5. Unreal Engine 5 fornisce il supporto per la specifica OpenXR di base, mentre le estensioni Android XR per Unreal forniscono il supporto per Android XR e altre estensioni specifiche per aiutarti a iniziare rapidamente.

Nozioni di base su Unreal Engine XR

Se non hai mai utilizzato Unreal o lo sviluppo XR, puoi consultare la documentazione per lo sviluppo XR di Unreal per comprendere i concetti e i flussi di lavoro di base. Ecco alcune aree chiave da esplorare:

Sviluppa e pubblica app per Android

Unreal Engine fornisce una documentazione completa per sviluppare, creare e pubblicare per Android. Questa documentazione illustra la gestione delle autorizzazioni Android all'interno dell'Engine, la configurazione delle impostazioni di build di Android (tramite Impostazioni progetto > Piattaforme > Android) e l'utilizzo di Unreal Automation Tool (UAT).

Inoltre, consulta la documentazione relativa alla pacchettizzazione e alla distribuzione di app per Android XR per i requisiti specifici che si applicano alle app spaziali distribuite sul Google Play Store. Assicurati che la tua app rispetti anche le norme sulla qualità per le esperienze immersive per offrire un'esperienza utente coerente e confortevole su Android XR.

Plug-in Unreal Engine per Android XR

Esistono due plug-in principali che forniscono il supporto per la creazione di app Unreal per Android XR. Questi plug-in sono gestiti tramite il menu Plugins (Plug-in) (Edit > Plugins (Modifica > Plug-in)).

Plug-in OpenXR per Android XR

Il plug-in Android XR OpenXR è l'interfaccia principale del motore che aggiunge il supporto di Android XR a Unreal. Implementa le estensioni OpenXR necessarie per il tracciamento spaziale, la comprensione dell'ambiente e la percezione. Per scoprire come aggiungere e configurare questo plug-in, consulta la documentazione di Unreal Engine OpenXR.

Estensioni Android XR per Unreal

Le estensioni Android XR per Unreal (v1.1.0, che supportano Unreal Engine 5.6.x e 5.8.x) integrano il supporto OpenXR di base, incluse funzionalità aggiuntive per aiutarti a creare esperienze immersive come entità spaziali, raycasting spaziale e di profondità, sfumatura della visualizzazione, cubemap di stima della luce, dati avanzati della mesh della mano e ottimizzazioni hardware specifiche. Per scoprire come importare e configurare questo pacchetto, segui la guida rapida di Android XR Extensions o consulta il Riferimento API Android XR Extensions per Unreal.

Ricevi assistenza

Se riscontri problemi, consulta la sezione di assistenza per Unreal Engine nella nostra pagina di assistenza per ricevere aiuto.

Input e interazione

La creazione di esperienze spaziali interattive richiede la mappatura dei movimenti fisici in azioni digitali. Unreal Engine utilizza il sistema Enhanced Input combinato con OpenXR per gestire sia i controller di movimento sia il tracciamento delle mani. Configurando le azioni di input e i contesti di mappatura degli input, puoi creare interazioni flessibili, come l'afferrare, il puntare e la navigazione nell'interfaccia utente, che funzionano perfettamente con i diversi metodi di input di Android XR.

Per una guida completa sulla creazione di queste meccaniche, consulta la documentazione di Unreal Engine su Creazione di esperienze XR interattive.

Android XR supporta i seguenti metodi di interazione specifici all'interno di Unreal Engine:

Profili di interazione

Puoi configurare i profili di interazione nelle impostazioni progetto nella sezione OpenXR. In questo modo, l'app può mantenere una mappatura degli input coerente tra diversi controller e metodi di tracciamento.

Interazione con le mani

L'interazione con le mani è fornita tramite l'estensione OpenXR Hand Tracking. Puoi accedere ai dati e alle pose delle articolazioni delle mani tramite i componenti di monitoraggio XR in Blueprints o C++.

Interazione con puntatore oculare

I dati relativi allo sguardo possono essere recuperati come una posa di input standard, consentendoti di gestire lo stato attivo dell'interfaccia utente o le funzionalità di presenza social. È richiesta l'autorizzazione android.permission.EYE_TRACKING_FINE.

Rilevamento dei volti

Accedi ai dati sulle espressioni facciali in tempo reale per animare gli avatar o guidare le interazioni sociali. Utilizza l'estensione XR_ANDROID_face_tracking.

Estensioni supportate

Le seguenti estensioni OpenXR sono supportate durante lo sviluppo per Android XR in Unreal:

Funzionalità o capacità Stringa di estensione OpenXR Annotazione fornita da

Persistenza degli ancoraggi del dispositivo

XR_ANDROID_device_anchor_persistence

Estensioni Android XR per Unreal (v1.0.0)

Raycast

XR_ANDROID_raycast

Estensioni Android XR per Unreal (v1.0.0)

Elementi tracciabili (piani/profondità)

XR_ANDROID_trackables

Estensioni Android XR per Unreal (v1.0.0)

Tracciamento degli oggetti

XR_ANDROID_trackables_object

Estensioni Android XR per Unreal (v1.0.0)

Scene Meshing

XR_ANDROID_scene_meshing

Estensioni Android XR per Unreal (v1.0.0)

Tracciamento facciale

XR_ANDROID_face_tracking

Estensioni Android XR per Unreal (v1.0.0)

Tracciamento oculare

XR_ANDROID_eye_tracking

Estensioni Android XR per Unreal (v1.0.0)

Stato della videocamera passthrough

XR_ANDROID_passthrough_camera_state

Estensioni Android XR per Unreal (v1.0.0)

Passthrough Mesh Layer

XR_ANDROID_composition_layer_passthrough_mesh

Estensioni Android XR per Unreal (v1.0.0)

Texture di profondità

XR_ANDROID_depth_texture

Estensioni Android XR per Unreal (v1.0.0)

Stima della luce

XR_ANDROID_light_estimation

Estensioni Android XR per Unreal (v1.0.0)

Cubemap di stima della luce

XR_ANDROID_light_estimation_cubemap

Estensioni Android XR per Unreal (v1.1.0)

Metriche sul rendimento

XR_ANDROID_performance_metrics

Estensioni Android XR per Unreal (v1.0.0)

Risoluzione consigliata

XR_ANDROID_recommended_resolution

Estensioni Android XR per Unreal (v1.0.0)

Interazione con le mani

XR_EXT_hand_interaction

Estensioni Android XR per Unreal (v1.0.0)

Debug Utils

XR_EXT_debug_utils

Unreal Native OpenXR

Impostazioni del rendimento

XR_EXT_performance_settings

Unreal Native OpenXR

Frequenza di aggiornamento del display

XR_FB_display_refresh_rate

Unreal Native OpenXR

Mesh di tracciamento delle mani

XR_FB_hand_tracking_mesh

Estensioni Android XR per Unreal (v1.0.0)

Space Warp

XR_FB_space_warp

Unreal Native OpenXR

Livello di composizione Equirect2

XR_KHR_composition_layer_equirect2

Unreal Native OpenXR

Impostazioni di Thread per Android

XR_KHR_android_thread_settings

Unreal Native OpenXR

Attenuazione passthrough globale

XR_ANDROID_global_passthrough_dimming

Estensioni Android XR per Unreal (v1.0.0)

Proprietà delle estensioni di sistema

XR_ANDROID_enumerate_system_extension_properties

Estensioni Android XR per Unreal (v1.0.0)

Entità spaziali

XR_EXT_spatial_entity

Estensioni Android XR per Unreal (v1.0.0)

Monitoraggio del piano spaziale

XR_EXT_spatial_plane_tracking

Estensioni Android XR per Unreal (v1.0.0)

Tracciamento dei marker spaziali

XR_EXT_spatial_marker_tracking

Estensioni Android XR per Unreal (v1.0.0)

Spatial Anchors e persistenza

XR_EXT_spatial_anchor, XR_EXT_spatial_persistence

Estensioni Android XR per Unreal (v1.0.0)

Sfumatura dell'area visibile

XR_ANDROID_viewport_feathering

Estensioni Android XR per Unreal (v1.1.0)

Spatial Discovery e Depth Raycast

XR_ANDROID_spatial_discovery_raycast

Estensioni Android XR per Unreal (v1.1.0)

Le estensioni sono fornite da una di queste fonti:

  • Estensioni Android XR per Unreal: si tratta di estensioni specifiche di Google (ANDROID) ed estensioni di entità spaziali (EXT) sviluppate per la piattaforma Android XR. Per utilizzare queste funzionalità spaziali, installa e attiva il plug-in Android XR Extensions in .uproject e consulta il Riferimento API Android XR Extensions per Unreal per l'utilizzo di Blueprint e C++.
  • Unreal Native OpenXR: queste funzionalità sfruttano le estensioni standard Khronos (KHR), Extension (EXT) e Meta (FB) già integrate e gestite direttamente nel plug-in OpenXR principale di Unreal Engine.