Sviluppa con OpenXR

Android XR supporta le app create con OpenXR tramite il supporto per la specifica OpenXR 1.1 e le estensioni di alcuni fornitori. OpenXR è uno standard aperto che ti consente di creare esperienze immersive e interattive utilizzando un insieme comune di API su una vasta gamma di dispositivi XR.

Funzionalità

Android XR supporta funzionalità che ti consentono di creare app che sfruttano al meglio le funzionalità uniche dei dispositivi XR, utilizzando OpenXR. Queste funzionalità includono:

Dispositivi rilevabili
Supporta il rilevamento di piani, ovvero la capacità di identificare e monitorare le superfici piane all'interno dell'ambiente, consentendo il posizionamento di oggetti virtuali in relazione al mondo reale e gli ancoraggi, ovvero punti di riferimento virtuali che possono essere collegati a oggetti o luoghi reali, garantendo che i contenuti virtuali rimangano posizionati e orientati con precisione anche quando l'utente si sposta.
Raycasting
Una tecnica utilizzata per determinare il punto di intersezione tra un raggio virtuale e gli oggetti nella scena, facilitando interazioni come la selezione e la manipolazione di elementi virtuali.
Persistenza dell'ancora
La possibilità di salvare e ripristinare le ancore in più sessioni, consentendo il posizionamento coerente e persistente dei contenuti virtuali all'interno dell'ambiente.
Monitoraggio degli oggetti
La possibilità di monitorare il mouse, la tastiera e altri oggetti nel mondo reale.
Texture di profondità
La generazione di mappe di profondità che forniscono informazioni sulla distanza tra la fotocamera e gli oggetti nella scena, consentendo effetti di occlusione e interazione più realistici.
Passthrough
La possibilità di combinare filmati della fotocamera reali con contenuti virtuali, creando un'esperienza di realtà mista che unisce perfettamente i mondi fisico e digitale.
Passthrough del livello di composizione
Consente di ritagliare un livello di composizione con passaggio di poligoni, che può essere utilizzato per inserire oggetti reali in una scena.
Rilevamento dei volti
La possibilità di monitorare i tratti del viso dell'utente, consentendo la creazione di avatar e personaggi virtuali più realistici ed espressivi.
Tracciamento oculare
Fornisce la posizione e l'orientamento dell'occhio dell'utente, in modo da rendere più realistica la posa degli occhi per gli avatar.
Rilevamento delle mani
La capacità di rilevare la posizione e il movimento delle mani dell'utente.
Maglia a mano
Fornisce una rappresentazione accurata delle mani dell'utente come mesh a basso numero di poligoni. Ottimizzato per il deployment da piattaforma ad applicazione per assicurarti di ottenere le migliori prestazioni possibili. Si tratta di un'alternativa alle altre estensioni che utilizzano una posa vincolante e i pesi di miscelazione.
Stima della luce
Utilizzato per i modelli di illuminazione in modo che corrispondano alle condizioni di illuminazione reali dell'utente.

Dispositivi di input supportati

Android XR supporta anche i seguenti dispositivi di input.

Interazione con le mani
Il riconoscimento di gesti specifici delle mani, come pinch, scorrimento e indicazione, che consente agli utenti di interagire con oggetti virtuali utilizzando gesti e movimenti delle mani.
Interazione con lo sguardo
La capacità di monitorare i movimenti oculari dell'utente, consentendogli di selezionare e interagire con oggetti virtuali utilizzando lo sguardo.
Controller per il movimento 6DoF
La possibilità di monitorare la posizione e il movimento dei controller, nonché le associazioni del D-pad e dei pulsanti per attivare azioni o eventi di passaggio del mouse all'interno dell'applicazione.
Interazione con il mouse
La possibilità per gli utenti di interagire con gli oggetti tramite un cursore del mouse nello spazio 3D

Funzionalità di rendimento supportate

Android XR supporta le seguenti funzionalità relative alle prestazioni.

Foveazione basata sul tracciamento oculare
Consente a un'app di visualizzare contenuti ad alta risoluzione solo nel punto focale degli occhi.
Distorsione spazio-temporale
Utilizza vettori di velocità e informazioni sulle texture di profondità per generare frame interpolati che aumentano in modo efficace la frequenza fotogrammi richiesta per mantenere gli utenti immersi nelle tue esperienze
Metriche sul rendimento
Fornisce le metriche sul rendimento di Android XR in fase di esecuzione del dispositivo XR, del compositore e dell'applicazione XR corrente. Sono inclusi cpu frametime, gpu frame time, utilizzo della GPU, frequenza della CPU, frame al secondo e altro ancora.

Consulta la Panoramica delle funzionalità di OpenXR per un elenco completo delle funzionalità e delle estensioni supportate.

Motori supportati

Unity

Il supporto di Unity per Android XR, basato su OpenXR, consente agli sviluppatori di creare esperienze utilizzando Unity 6. Scopri di più sulla creazione di app XR con Unity nella panoramica di Unity.