Android XR obsługuje OpenXR zgodnie ze specyfikacją OpenXR 1.1 i długą listą rozszerzeń zewnętrznych dostawców. Korzystanie z tych rozszerzeń zapewnia znajome środowisko podczas tworzenia aplikacji na XR. Niektóre z tych funkcji wymagają uprawnień czasu działania na Androidzie. Jeśli chcesz tworzyć aplikacje bezpośrednio na podstawie interfejsów OpenXR API, wymagane pliki nagłówkowe znajdziesz w tym repozytorium.
Rozszerzenia dostawcy Androida XR
| Nazwa rozszerzenia | Opis | 
|---|---|
| Umożliwia aplikacji wyświetlanie tekstur passthrough na dowolnej geometrii za pomocą dodatkowej warstwy kompozycji. To rozszerzenie wymaga  | |
| Udostępnia surową i wygładzoną głębię na potrzeby okluzji, testów trafień i innych konkretnych zadań, które wykorzystują dokładną geometrię sceny, np. wykrywanie podrobionych twarzy. Zapewnia teksturę głębi o niskiej rozdzielczości i pewność sceny na podstawie bieżących pozycji kamery lub oczu. To rozszerzenie wymaga  | |
| Umożliwia aplikacji zapisywanie, pobieranie i usuwanie kotwic na bieżącym urządzeniu w różnych aplikacjach i sesjach urządzenia. To rozszerzenie wymaga  | |
| Zezwala aplikacji na uzyskiwanie informacji o pozycji i orientacji oczu użytkownika, co ma na celu bardziej realistyczne przedstawianie pozycji i stanu oczu awatarów. Nie używaj tego rozszerzenia do innych celów związanych ze śledzeniem wzroku. Do interakcji należy używać znacznika  | |
| Zezwala aplikacji na pobieranie wag kształtów mieszanych i renderowanie wyrazów twarzy w środowiskach XR. To rozszerzenie wymaga  | |
| Umożliwia śledzenie rąk za pomocą dynamicznej siatki rąk. To rozszerzenie ma na celu dostarczanie buforów wierzchołków i indeksów dla siatki spersonalizowanej reprezentacji dłoni użytkownika. Do śledzenia stawów dłoni można używać  | |
| Szacuje oświetlenie otoczenia (w tym harmoniczne sferyczne) w bieżącym otoczeniu użytkownika. To rozszerzenie umożliwia aplikacji żądanie danych reprezentujących oświetlenie środowiska w świecie rzeczywistym wokół zestawu słuchawkowego. Te informacje mogą być używane podczas renderowania obiektów wirtualnych, aby oświetlać je w tych samych warunkach co scena, w której są umieszczone. To rozszerzenie wymaga  | |
| To rozszerzenie wprowadza nowy profil interakcji zaprojektowany specjalnie dla urządzeń wskazujących, aby można było wprowadzać dane za pomocą systemu działań OpenXR. Umożliwia korzystanie z często używanych pozycji działania w profilach myszy użytkownika, w tym w przypadku myszy i trackpadów. Jest to funkcja przeznaczona do interakcji z obiektami za pomocą wskaźnika myszy w przestrzeni 3D. Na przykład używanie wirtualnego wskaźnika laserowego do celowania w wirtualny przycisk na ścianie to interakcja odpowiednia dla pozycji „celowanie”. | |
| Określa stany włączony, inicjowanie lub wyłączony dla kamery podglądu. | |
| To rozszerzenie udostępnia interfejsy API do wyliczania i wykonywania zapytań dotyczących różnych liczników danych o wydajności bieżącego urządzenia XR, kompozytora i aplikacji XR. | |
| To rozszerzenie umożliwia aplikacji wykonywanie śledzenia promieni w odniesieniu do obiektów śledzonych w otoczeniu. To rozszerzenie wymaga  | |
| Umożliwia aplikacji uzyskiwanie w czasie rzeczywistym semantycznej siatki 3D otoczenia. To rozszerzenie wymaga  | |
| To rozszerzenie umożliwia aplikacji dostęp do obiektów śledzonych, takich jak samoloty, w środowisku fizycznym oraz tworzenie kotwic dołączonych do obiektu śledzonego. To rozszerzenie wymaga  | |
| Obsługuje śledzenie obiektów fizycznych, takich jak klawiatura i mysz, w scenie. To rozszerzenie wymaga  | |
| Umożliwia śledzenie fizycznych kodów QR i dekodowanie danych z kodów QR. To rozszerzenie wymaga  | |
| Zapewnia nieograniczoną przestrzeń odniesienia, która może być wykorzystywana do lepszego zrozumienia sceny z biegiem czasu. Ta przestrzeń odniesienia umożliwia widzowi swobodne poruszanie się w złożonym środowisku, często wiele metrów od miejsca, w którym się rozpoczął, przy jednoczesnej optymalizacji stabilności układu współrzędnych w pobliżu widza. | 
Inne obsługiwane rozszerzenia
Obsługiwane są też te dodatkowe rozszerzenia: Informacje znajdują się w witrynach zewnętrznych.
- XR_EXT_debug_utils
- XR_EXT_dpad_binding
- XR_EXT_eye_gaze_interaction*
- XR_EXT_hand_tracking*
- XR_EXT_hand_interaction
- XR_EXT_palm_pose
- XR_EXT_performance_settings
- XR_EXT_uuid
- XR_FB_composition_layer_depth_test
- XR_FB_display_refresh_rate
- XR_FB_foveation
- XR_FB_foveation_configuration
- XR_FB_foveation_vulkan
- XR_FB_hand_tracking_aim*
- XR_FB_space_warp
- XR_KHR_android_create_instance
- XR_KHR_android_surface_swapchain
- XR_KHR_android_thread_settings
- XR_KHR_binding_modification
- XR_KHR_composition_layer_color_scale_bias
- XR_KHR_composition_layer_cube
- XR_KHR_composition_layer_cylinder
- XR_KHR_composition_layer_depth
- XR_KHR_composition_layer_equirect2
- XR_KHR_convert_timespec_time
- XR_KHR_loader_init
- XR_KHR_loader_init_android
- XR_KHR_opengl_es_enable
- XR_KHR_swapchain_usage_input_attachment_bit
- XR_KHR_vulkan_enable2
- XR_META_vulkan_swapchain_create_info
- XR_MND_headless
OpenXR™ i logo OpenXR są znakami towarowymi należącymi do The Khronos Group Inc. i są zarejestrowane jako znaki towarowe w Chinach, Unii Europejskiej, Japonii i Wielkiej Brytanii.
