Android XR supporta OpenXR tramite la specifica OpenXR 1.1 e un lungo elenco di estensioni di fornitori di terze parti. L'utilizzo di queste estensioni ti offre un'esperienza familiare durante lo sviluppo per XR. Alcune di queste funzionalità richiedono autorizzazioni di runtime Android. Se vuoi creare direttamente sulle API OpenXR, puoi trovare i file di intestazione richiesti nel repository jetpack-xr-natives.
Estensioni del fornitore Android XR
Nome estensione |
Descrizione |
Versione dell'API Spatial |
|---|---|---|
Le ancora create da un'applicazione tramite Autorizzazioni: |
||
Utilizza la cinematica inversa per determinare la posizione del corpo in base alla posizione della testa e delle mani. Autorizzazioni: |
||
Per i dispositivi che supportano più modalità di fusione dell'ambiente. Autorizzazioni: |
||
Questa estensione consente all'applicazione di richiedere mappe di profondità dell'ambiente reale intorno al visore ed eseguire query sulle risoluzioni di profondità supportate al momento della creazione. Autorizzazioni: |
||
Questa estensione consente all'applicazione di persistere. Autorizzazioni: |
||
Questa estensione consente alle applicazioni di determinare quali estensioni sono supportate dalla configurazione di sistema corrente. |
||
Questa estensione consente alle applicazioni di ottenere la posizione e l'orientamento degli occhi dell'utente, nonché lo stato del tracciamento oculare. Autorizzazioni: |
||
Questa estensione consente alle applicazioni di ottenere i pesi delle forme di fusione e di eseguire il rendering delle espressioni facciali nelle esperienze XR. Autorizzazioni: |
||
Questa estensione consente alle applicazioni di ottenere dati di tracciamento facciale da più origini dati. Autorizzazioni: |
||
Questa estensione fornisce il monitoraggio geospaziale per l'API Geospatial di Google. Autorizzazioni: |
||
Questa estensione fornisce ancoraggi geospaziali e ancoraggi di superficie posizionati nello spazio rispetto alla Terra a una determinata latitudine, longitudine e altitudine. Autorizzazioni: |
||
Questa estensione consente alle applicazioni di impostare ed eseguire query sul livello di oscuramento passthrough globale e di ricevere eventi quando il livello di oscuramento cambia. |
||
Questa estensione consente l'utilizzo di estensioni basate su Google Cloud consentendo all'applicazione di fornire credenziali di autenticazione per le API Google Cloud. |
||
Questa estensione abilita gli input di tracciamento delle mani rappresentati come una mesh dinamica delle mani. Autorizzazioni: |
||
Questa estensione consente all'applicazione di richiedere dati che rappresentano l'illuminazione dell'ambiente reale intorno al visore. Autorizzazioni: |
||
Questa estensione si basa sull'estensione di base Autorizzazioni: |
||
Questa estensione fornisce un |
||
La videocamera passthrough può richiedere del tempo per avviarsi e potrebbe non essere immediatamente disponibile. |
||
Questa estensione fornisce API per enumerare ed eseguire query su vari contatori delle metriche sul rendimento del dispositivo XR corrente. |
||
Questa estensione consente all'applicazione di eseguire raycast sugli elementi tracciabili nell'ambiente. Autorizzazioni: |
||
Questa estensione consente al runtime di notificare all'applicazione quando la risoluzione consigliata cambia. |
||
L'ambiente predefinito dell'utente può trovarsi in vari stati utilizzando una combinazione di modalità di fusione e modalità di input. |
||
Questa estensione ha lo scopo di fornire mesh che rappresentano approssimativamente gli oggetti fisici nell'ambiente dell'utente. Autorizzazioni: |
||
La funzione Al contrario, questa estensione crea un ancoraggio spaziale rappresentato da un handle Autorizzazioni: |
||
Questa estensione fornisce la funzionalità di monitoraggio delle annotazioni per l'estensione Autorizzazioni: |
||
Questa estensione si basa su Autorizzazioni: |
||
Questa estensione aggiunge definizioni per i limiti spaziali che consentono alle applicazioni di filtrare le entità spaziali rilevate. Autorizzazioni: |
||
Questa estensione si basa su XR_EXT_spatial_entity e fornisce funzionalità di raycast per le funzionalità spaziali esistenti. Autorizzazioni: |
||
Questa estensione consente alle applicazioni di creare e collegare ancoraggi a entità spaziali. Autorizzazioni: |
||
Questa estensione si basa su Autorizzazioni: |
||
Questa estensione consente all'applicazione di accedere agli elementi tracciabili dell'ambiente fisico. Autorizzazioni: |
||
Questa estensione consente di monitorare le immagini planari come specificato da insiemi di immagini di riferimento di input. Autorizzazioni: |
||
Questa estensione consente il monitoraggio dei marker fisici. Autorizzazioni: |
||
Questa estensione consente il tracciamento degli oggetti fisici. Autorizzazioni: |
||
Questa estensione consente il monitoraggio dei codici QR fisici e la decodifica dei dati dei codici QR. Autorizzazioni: |
||
Questa estensione consente alle applicazioni di creare uno spazio di riferimento |
||
Questa estensione espone l'area sfumata applicata dal runtime in modo che un'applicazione possa disporre gli elementi UI all'interno dell'area sicura. |
Estensioni di terze parti
Nome estensione |
Descrizione |
Versione dell'API Spatial |
|---|---|---|
Alcune applicazioni potrebbero dover accedere ai dispositivi di interazione XR senza presentare contenuti di immagini sul display o sui display. |
||
Questa estensione aggiunge una struttura facoltativa che può essere inclusa nella catena |
||
A causa della natura dell'interfaccia OpenXR, le informazioni sugli errori disponibili per lo sviluppatore e l'applicazione sono molto limitate. |
||
Questa estensione consente alle applicazioni di individuare le singole articolazioni degli input di tracciamento delle mani. Autorizzazioni: |
||
Questa estensione definisce un'API per l'applicazione per fornire suggerimenti sulle prestazioni al runtime e per il runtime per inviare notifiche relative alle prestazioni all'applicazione. In questo modo, entrambe le parti possono trovare un compromesso adeguato tra le prestazioni della CPU e della GPU necessarie, la sostenibilità termica e un'esperienza utente costantemente positiva per tutta la sessione. |
||
Su piattaforme che supportano la regolazione dinamica della frequenza di aggiornamento del display. |
||
Questa estensione consente all'applicazione di modificare ed eseguire query su uno stato mutabile specifico associato a una swapchain. |
||
La foveazione nel contesto della realtà estesa è una tecnica di rendering che consente di visualizzare l'area di un'immagine vicino al punto focale o alla fovea dell'occhio con una risoluzione superiore rispetto alle aree periferiche. |
||
Sui visori Facebook, gli sviluppatori possono creare profili di foveazione generati dal runtime per le proprietà ottiche e le prestazioni. |
||
L'API grafica Vulkan richiede l'applicazione di un'immagine alla catena di scambio per applicare un pattern di foveazione. |
||
Questa estensione fornisce il supporto per attivare la tecnologia Space Warp nell'applicazione. |
||
Questa estensione deve essere fornita dai runtime che supportano le applicazioni che utilizzano le API OpenGL ES per il rendering. |
||
Quando l'applicazione crea un oggetto XrInstance sui sistemi Android. |
||
Un'attività comune in XR è la visualizzazione di uno stream di immagini. |
||
Per un'esperienza XR confortevole, è importante che le applicazioni forniscano i frame in modo rapido e coerente. |
||
La scala e la distorsione del colore vengono applicate a un colore del livello durante la composizione, dopo la sua conversione in rappresentazione alfa premoltiplicata. |
||
Questa estensione aggiunge un tipo di livello aggiuntivo che consente il campionamento diretto dalle mappe cubiche. |
||
Questa estensione aggiunge un tipo di livello aggiuntivo in cui il runtime XR deve mappare una texture proveniente da una swapchain all'interno di una sezione cilindrica. Può essere immaginato in modo molto simile a come appare uno schermo televisivo curvo a uno spettatore. |
||
Questa estensione definisce un tipo di livello aggiuntivo che consente alle applicazioni di inviare immagini di profondità insieme alle immagini a colori nei livelli di proiezione. |
||
Questa estensione aggiunge un ulteriore tipo di livello in cui il runtime XR deve mappare un'immagine codificata equirettangolare proveniente da una catena di scambio all'interno di una sfera. |
||
Questa estensione aggiunge un ulteriore tipo di livello in cui il runtime XR deve mappare un'immagine codificata equirettangolare proveniente da una catena di scambio all'interno di una sfera. Questa estensione utilizza una parametrizzazione diversa, più in linea con la formulazione di |
||
Questa estensione fornisce due funzioni per la conversione tra il tempo monotonico timespec e |
||
Questa estensione consente l'utilizzo dell'API grafica Vulkan in un runtime OpenXR. |
||
Questa estensione consente l'utilizzo dell'API grafica Vulkan in un runtime OpenXR. |
||
Su alcune piattaforme, prima che possa avvenire il caricamento, il caricatore deve essere inizializzato con parametri specifici della piattaforma. |
||
Su Android, alcune implementazioni del caricatore richiedono che l'applicazione fornisca informazioni aggiuntive sull'inizializzazione. |
||
Questa estensione consente a un'applicazione di specificare che le immagini della catena di scambio devono essere create in modo da poter essere utilizzate come allegati di input. Al momento della stesura di questo documento, questo bit influisce solo sulle catene di scambio Vulkan. |
||
Questa estensione consente all'applicazione di associare una o più azioni digitali a un trackpad o a una levetta analogica come se fosse un dpad, definendo percorsi di componenti aggiuntivi per cui suggerire le associazioni. |
||
Questa estensione definisce un identificatore univoco universale che segue lo standard RFC 4122. |
||
Questa estensione consente la composizione di livelli con test di profondità. |
||
Questa estensione fornisce un Autorizzazioni: |
||
Questa estensione definisce quattro pose di azione di uso comune per tutti i profili di interazione con le mani dell'utente, inclusi i dispositivi di tracciamento delle mani e i dispositivi di controllo del movimento. |
||
Questa estensione supporta la fornitura di una maschera di disegno per visualizzazione per le applicazioni. |
||
Il rendering foveated con tracciamento oculare esegue il rendering di una densità di pixel inferiore nella periferia dello sguardo dell'utente. Autorizzazioni: |
||
L'estensione Autorizzazioni: |
||
Questa estensione definisce un nuovo "identificatore di posa standard" per i profili di interazione, denominato "palm_ext". |
||
I visori Varjo offrono display con una densità di pixel estremamente elevata nell'area centrale del display. Autorizzazioni: |
||
Questa estensione aggiunge un nuovo tipo di configurazione della visualizzazione, |
||
Utilizzando questa estensione, un'applicazione basata su Vulkan può trasmettere |
||
L'estensione Autorizzazioni: |
||
Questa estensione non definisce un nuovo tipo di livello di composizione. |
||
|
||
Questa estensione consente alle applicazioni di richiedere l'utilizzo di opzioni di elaborazione come la nitidezza o il super-sampling su un livello di composizione. |
||
Questa estensione introduce la funzione xrLocateSpacesKHR. |
||
La specifica OpenXR di base contiene due tipi di spazi di riferimento bloccati nel mondo |
||
Questa estensione si basa su Autorizzazioni: |
||
Questa estensione consente alle applicazioni di rilevare e correlare le entità spaziali tra le sessioni dell'applicazione. Autorizzazioni: |
||
Questa estensione si basa su Autorizzazioni: |
||
Questa estensione si basa su Autorizzazioni: |
||
Questa estensione introduce i concetti e i fondamenti per la comprensione delle scene e il ragionamento spaziale in OpenXR. |
||
Nei sistemi XR esistono alcune operazioni che richiedono molto tempo e non vengono completate ragionevolmente entro un normale ciclo di frame. |
||
I dispositivi XR potrebbero utilizzare uno spazio dei colori diverso da quello di molti monitor utilizzati nello sviluppo. |
||
Questa estensione fornisce un flag che, se applicato a un livello di composizione, inverte l'interpretazione del valore alfa nelle immagini della catena di scambio del livello. |
||
La funzione |
||
Questa estensione fornisce il supporto per attivare la sintesi dei frame nelle applicazioni in base ai dati aggiuntivi forniti dall'applicazione. |
||
Fornisce operazioni di tracciamento delle immagini Qualcomm per gli elementi tracciabili. |
||
Fornisce operazioni di monitoraggio dei codici QR Qualcomm per i tracker. |
||
Questa estensione introduce un nuovo evento per notificare quando il sistema ha rilevato la modifica della presenza dell'utente. |
||
Questa estensione aumenta le dimensioni massime dei nomi delle strutture e fornisce una nuova funzione per accedere a questi nuovi nomi estesi. |
||
Questa estensione migliora l'estensione |
||
Questa estensione descrive il "self rendering" nel contesto dei container spaziali. |
||
Questa estensione definisce una nuova classe di entità visualizzabili. |
||
Questa estensione consente alle applicazioni di rendere persistenti e non persistenti le entità spaziali tra le sessioni. Autorizzazioni: |
||
Questa estensione si basa su Autorizzazioni: |
||
Questa estensione si basa su Autorizzazioni: |
||
Questa estensione fornisce la funzionalità di monitoraggio delle immagini per l'estensione Autorizzazioni: |
||
|
||
Questa estensione non definisce un nuovo tipo di livello di composizione. |
OpenXR™ e il logo OpenXR sono marchi di proprietà di The Khronos Group Inc. e sono registrati come marchi in Cina, nell'Unione Europea, in Giappone e nel Regno Unito.