Android XR obsługuje OpenXR zgodnie ze specyfikacją OpenXR 1.1 i długą listą rozszerzeń innych firm. Korzystanie z tych rozszerzeń zapewnia znajome środowisko podczas tworzenia aplikacji na XR. Niektóre z tych funkcji wymagają uprawnień w czasie działania aplikacji na Androida. Jeśli chcesz tworzyć aplikacje bezpośrednio w interfejsach API OpenXR, wymagane pliki nagłówkowe znajdziesz w repozytorium jetpack-xr-natives.
Rozszerzenia dostawcy Androida XR
Nazwa rozszerzenia |
Opis |
Wersja interfejsu Spatial API |
|---|---|---|
Kotwice utworzone przez aplikację za pomocą Uprawnienia: |
||
Wykorzystuje kinematykę odwrotną do określania pozycji ciała na podstawie pozycji głowy i dłoni. Uprawnienia: |
||
W przypadku urządzeń, które obsługują wiele trybów mieszania środowiska. Uprawnienia: |
||
To rozszerzenie umożliwia aplikacji żądanie map głębi rzeczywistego środowiska wokół gogli i wysyłanie zapytań o obsługiwane rozdzielczości głębi podczas tworzenia. Uprawnienia: |
||
To rozszerzenie umożliwia zachowanie aplikacji. Uprawnienia: |
||
To rozszerzenie umożliwia aplikacjom określenie, które rozszerzenia są obsługiwane przez bieżącą konfigurację systemu. |
||
To rozszerzenie umożliwia aplikacjom uzyskiwanie informacji o pozycji i orientacji oczu użytkownika, a także o stanie śledzenia wzroku. Uprawnienia: |
||
To rozszerzenie umożliwia aplikacjom uzyskiwanie wag kształtów mieszanych i renderowanie mimiki twarzy w XR. Uprawnienia: |
||
To rozszerzenie umożliwia aplikacjom uzyskiwanie danych śledzenia twarzy z wielu źródeł. Uprawnienia: |
||
To rozszerzenie umożliwia śledzenie geoprzestrzenne na potrzeby interfejsu Geospatial API Google. Uprawnienia: |
||
To rozszerzenie udostępnia kotwice geoprzestrzenne i kotwice powierzchniowe, które są umieszczone w przestrzeni względem Ziemi na danej szerokości i długości geograficznej oraz wysokości. Uprawnienia: |
||
To rozszerzenie umożliwia aplikacjom ustawianie i wykonywanie zapytań dotyczących globalnego poziomu przyciemniania trybu passthrough oraz otrzymywanie zdarzeń, gdy poziom przyciemniania się zmienia. |
||
To rozszerzenie umożliwia korzystanie z rozszerzeń działających w chmurze Google, umożliwiając aplikacji podawanie danych uwierzytelniających do Cloud APIs Google. |
||
To rozszerzenie umożliwia wprowadzanie danych za pomocą śledzenia rąk, które są reprezentowane jako dynamiczna siatka dłoni. Uprawnienia: |
||
To rozszerzenie umożliwia aplikacji żądanie danych dotyczących oświetlenia w środowisku rzeczywistym wokół gogli. Uprawnienia: |
||
To rozszerzenie jest oparte na podstawowym rozszerzeniu Uprawnienia: |
||
To rozszerzenie udostępnia |
||
Uruchomienie kamery trybu passthrough może trochę potrwać i może ona nie być od razu dostępna. |
||
To rozszerzenie udostępnia interfejsy API do wyliczania i wykonywania zapytań dotyczących różnych liczników wskaźników wydajności bieżącego urządzenia XR. |
||
To rozszerzenie umożliwia aplikacji rzutowanie promieni na elementy możliwe do śledzenia w środowisku. Uprawnienia: |
||
To rozszerzenie umożliwia środowisku wykonawczemu powiadamianie aplikacji o zmianie zalecanej rozdzielczości. |
||
Domyślne środowisko użytkownika może być w różnych stanach, które są kombinacją trybu mieszania i sposobu wprowadzania danych. |
||
To rozszerzenie ma na celu dostarczanie siatek, które w przybliżeniu reprezentują obiekty fizyczne w środowisku użytkownika. Uprawnienia: |
||
Funkcja To rozszerzenie tworzy natomiast kotwicę przestrzenną, która jest reprezentowana przez uchwyt Uprawnienia: |
||
To rozszerzenie zapewnia możliwość śledzenia adnotacji w rozszerzeniu Uprawnienia: |
||
To rozszerzenie bazuje na Uprawnienia: |
||
To rozszerzenie dodaje definicje granic przestrzennych, które umożliwiają aplikacjom filtrowanie wykrytych elementów przestrzennych. Uprawnienia: |
||
To rozszerzenie bazuje na XR_EXT_spatial_entity i zapewnia funkcję rzutowania promieni w przypadku istniejących funkcji przestrzennych. Uprawnienia: |
||
To rozszerzenie umożliwia aplikacjom tworzenie i dołączanie kotwic do elementów przestrzennych. Uprawnienia: |
||
To rozszerzenie opiera się na Uprawnienia: |
||
To rozszerzenie umożliwia aplikacji dostęp do elementów śledzonych z otoczenia fizycznego. Uprawnienia: |
||
To rozszerzenie umożliwia śledzenie obrazów planarnych określonych przez zestawy wejściowych obrazów referencyjnych. Uprawnienia: |
||
To rozszerzenie umożliwia śledzenie znaczników fizycznych. Uprawnienia: |
||
To rozszerzenie umożliwia śledzenie obiektów fizycznych. Uprawnienia: |
||
To rozszerzenie umożliwia śledzenie fizycznych kodów QR i dekodowanie danych z kodów QR. Uprawnienia: |
||
To rozszerzenie umożliwia aplikacjom tworzenie przestrzeni referencyjnej |
||
To rozszerzenie ujawnia obszar z rozmyciem zastosowany przez środowisko wykonawcze, dzięki czemu aplikacja może rozmieszczać elementy interfejsu w bezpiecznym obszarze. |
Rozszerzenia innych firm
Nazwa rozszerzenia |
Opis |
Wersja interfejsu Spatial API |
|---|---|---|
Niektóre aplikacje mogą wymagać dostępu do urządzeń do interakcji XR bez wyświetlania żadnych treści graficznych na wyświetlaczu lub wyświetlaczach. |
||
To rozszerzenie dodaje opcjonalną strukturę, którą można uwzględnić w łańcuchu |
||
Ze względu na charakter interfejsu OpenXR deweloper i aplikacja mają dostęp do bardzo niewielu informacji o błędach. |
||
To rozszerzenie umożliwia aplikacjom lokalizowanie poszczególnych stawów na podstawie danych wejściowych ze śledzenia rąk. Uprawnienia: |
||
To rozszerzenie definiuje interfejs API, który umożliwia aplikacji przekazywanie wskazówek dotyczących wydajności do środowiska wykonawczego, a środowisku wykonawczemu – wysyłanie powiadomień związanych z wydajnością z powrotem do aplikacji. Dzięki temu obie strony mogą znaleźć odpowiedni kompromis między potrzebną wydajnością procesora i GPU, stabilnością termiczną i spójnymi, dobrymi wrażeniami użytkownika podczas całej sesji. |
||
Na platformach, które obsługują dynamiczne dostosowywanie częstotliwości odświeżania wyświetlacza. |
||
To rozszerzenie umożliwia aplikacji modyfikowanie i odpytywanie określonego stanu zmiennego powiązanego z łańcuchem wymiany. |
||
Fowiacja w kontekście XR to technika renderowania, która umożliwia wyświetlanie obszaru obrazu w pobliżu punktu skupienia lub dołka środkowego oka w wyższej rozdzielczości niż obszary na obrzeżach. |
||
W przypadku gogli VR Facebooka deweloperzy mogą tworzyć profile fowiacji generowane przez środowisko wykonawcze pod kątem właściwości optycznych i wydajności. |
||
Interfejs Vulkan Graphics API wymaga zastosowania obrazu do łańcucha wymiany, aby zastosować wzorzec foveation. |
||
To rozszerzenie zapewnia obsługę technologii Space Warp w aplikacji. |
||
To rozszerzenie musi być udostępniane przez środowiska wykonawcze obsługujące aplikacje, które do renderowania używają interfejsów API OpenGL ES. |
||
Gdy aplikacja tworzy obiekt XrInstance w systemach Android. |
||
Częstym działaniem w XR jest wyświetlanie strumienia obrazów. |
||
Aby korzystanie z XR było komfortowe, aplikacje muszą szybko i spójnie dostarczać klatki. |
||
Skala kolorów i odchylenie są stosowane do koloru warstwy podczas kompozycji, po jej przekonwertowaniu na reprezentację wstępnie pomnożonej przezroczystości. |
||
To rozszerzenie dodaje dodatkowy typ warstwy, który umożliwia bezpośrednie próbkowanie z map sześciennych. |
||
To rozszerzenie dodaje dodatkowy typ warstwy, w której środowisko wykonawcze XR musi mapować teksturę pochodzącą z łańcucha wymiany na wnętrze sekcji cylindra. Można to sobie wyobrazić jako zakrzywiony ekran telewizora. |
||
To rozszerzenie definiuje dodatkowy typ warstwy, który umożliwia aplikacjom przesyłanie obrazów głębi wraz z obrazami kolorowymi w warstwach projekcji. |
||
To rozszerzenie dodaje dodatkowy typ warstwy, w której środowisko wykonawcze XR musi mapować obraz zakodowany w formacie równoodległościowym walcowym pochodzący z łańcucha wymiany na wnętrze sfery. |
||
To rozszerzenie dodaje dodatkowy typ warstwy, w której środowisko wykonawcze XR musi mapować obraz zakodowany w formacie równoodległościowym walcowym pochodzący z łańcucha wymiany na wnętrze sfery. To rozszerzenie używa innej parametryzacji, która jest bardziej zgodna ze sformułowaniem |
||
To rozszerzenie udostępnia 2 funkcje do konwersji między czasem monotonicznym timespec a |
||
To rozszerzenie umożliwia korzystanie z interfejsu Vulkan Graphics API w środowisku wykonawczym OpenXR. |
||
To rozszerzenie umożliwia korzystanie z interfejsu Vulkan Graphics API w środowisku wykonawczym OpenXR. |
||
Na niektórych platformach przed wczytaniem należy zainicjować moduł z parametrami właściwymi dla danej platformy. |
||
Na Androidzie niektóre implementacje modułu ładującego wymagają, aby aplikacja podawała dodatkowe informacje podczas inicjowania. |
||
To rozszerzenie umożliwia aplikacji określenie, że obrazy łańcucha wymiany powinny być tworzone w taki sposób, aby można było ich używać jako załączników wejściowych. W momencie pisania tego artykułu ten bit wpływa tylko na łańcuchy wymiany Vulkan. |
||
To rozszerzenie umożliwia aplikacji powiązanie co najmniej 1 działania cyfrowego z trackpadem lub drążkiem, tak jakby był to d-pad, przez zdefiniowanie dodatkowych ścieżek komponentów, dla których można sugerować powiązania. |
||
To rozszerzenie definiuje unikalny identyfikator uniwersalny zgodny z RFC 4122. |
||
To rozszerzenie umożliwia kompozycję warstw z testowaniem głębi. |
||
To rozszerzenie udostępnia Uprawnienia: |
||
To rozszerzenie definiuje 4 powszechnie używane pozy działania dla wszystkich profili interakcji dłoni użytkownika, w tym urządzeń do śledzenia rąk i kontrolerów ruchu. |
||
To rozszerzenie obsługuje udostępnianie maski rysowania dla aplikacji w każdym widoku. |
||
Renderowanie foveated ze śledzeniem wzroku renderuje mniejszą gęstość pikseli na obrzeżach pola widzenia użytkownika. Uprawnienia: |
||
Rozszerzenie Uprawnienia: |
||
To rozszerzenie definiuje nowy „standardowy identyfikator pozycji” dla profili interakcji o nazwie „palm_ext”. |
||
Gogle Varjo mają wyświetlacze o bardzo dużej gęstości pikseli w środkowej części. Uprawnienia: |
||
To rozszerzenie dodaje nowy typ konfiguracji widoku – |
||
Za pomocą tego rozszerzenia aplikacja oparta na Vulkanie może przekazywać dodatkowe flagi |
||
Rozszerzenie Uprawnienia: |
||
To rozszerzenie nie definiuje nowego typu warstwy kompozycji. |
||
|
||
To rozszerzenie umożliwia aplikacjom żądanie użycia opcji przetwarzania, takich jak wyostrzanie lub supersampling, na warstwie kompozycji. |
||
To rozszerzenie wprowadza funkcję xrLocateSpacesKHR. |
||
Podstawowa specyfikacja OpenXR zawiera 2 typy przestrzeni referencyjnej zablokowanej w świecie |
||
To rozszerzenie bazuje na Uprawnienia: |
||
To rozszerzenie umożliwia aplikacjom wykrywanie i korelowanie elementów przestrzennych w ramach sesji aplikacji. Uprawnienia: |
||
To rozszerzenie bazuje na Uprawnienia: |
||
To rozszerzenie bazuje na Uprawnienia: |
||
To rozszerzenie wprowadza koncepcje i podstawy rozpoznawania scen i rozumowania przestrzennego w OpenXR. |
||
W systemach XR niektóre operacje trwają długo i nie kończą się w normalnej pętli klatek. |
||
Urządzenia z XR mogą używać przestrzeni barw, która różni się od wielu monitorów używanych podczas programowania. |
||
To rozszerzenie udostępnia flagę, która po zastosowaniu do warstwy kompozycji odwraca interpretację wartości alfa w obrazach łańcucha wymiany warstwy. |
||
Funkcja |
||
To rozszerzenie umożliwia syntezę klatek w aplikacjach na podstawie dodatkowych danych dostarczanych przez aplikację. |
||
Zapewnia operacje śledzenia obrazu Qualcomm na potrzeby elementów śledzonych. |
||
Zapewnia operacje śledzenia za pomocą kodu QR Qualcomm w przypadku elementów śledzonych. |
||
To rozszerzenie wprowadza nowe zdarzenie, które powiadamia o wykryciu przez system zmiany obecności użytkownika. |
||
To rozszerzenie zwiększa maksymalne rozmiary nazw struktur i udostępnia nową funkcję umożliwiającą dostęp do tych nowych rozszerzonych nazw. |
||
To rozszerzenie rozszerza rozszerzenie |
||
To rozszerzenie opisuje „samodzielne renderowanie” w kontekście kontenerów przestrzennych. |
||
To rozszerzenie definiuje nową klasę elementów, które można wyświetlać. |
||
To rozszerzenie umożliwia aplikacjom zachowywanie i usuwanie elementów przestrzennych w różnych sesjach. Uprawnienia: |
||
To rozszerzenie bazuje na Uprawnienia: |
||
To rozszerzenie opiera się na Uprawnienia: |
||
To rozszerzenie zapewnia możliwość śledzenia obrazów na potrzeby rozszerzenia Uprawnienia: |
||
|
||
To rozszerzenie nie definiuje nowego typu warstwy kompozycji. |
OpenXR™ i logo OpenXR są znakami towarowymi należącymi do firmy The Khronos Group Inc. i są zarejestrowane jako znaki towarowe w Chinach, Japonii, Unii Europejskiej i Wielkiej Brytanii.