Programuj za pomocą OpenXR

Android XR obsługuje aplikacje utworzone za pomocą OpenXR dzięki obsłudze specyfikacji OpenXR 1.1 i wybranych rozszerzeń dostawców. OpenXR to otwarty standard, który umożliwia tworzenie wciągających i interaktywnych środowisk za pomocą wspólnego zestawu interfejsów API na wielu urządzeniach XR.

Funkcje

Android XR obsługuje funkcje, które pozwalają tworzyć aplikacje w pełni wykorzystujące unikalne możliwości urządzeń XR za pomocą OpenXR. Obejmują one m.in.:

Trackables
Obsługuje wykrywanie płaszczyzn, czyli możliwość identyfikowania i śledzenia płaskich powierzchni w otoczeniu, co umożliwia umieszczanie wirtualnych obiektów w odniesieniu do świata rzeczywistego, oraz kotwice, czyli wirtualne punkty odniesienia, które można przyczepić do obiektów lub lokalizacji w świecie rzeczywistym, dzięki czemu wirtualne treści pozostają dokładnie umieszczone i zorientowane nawet wtedy, gdy użytkownik się porusza.
Rzutowanie promieni
Technika służąca do określania punktu przecięcia wirtualnego promienia z obiektami w scenie, która ułatwia interakcje, takie jak wybieranie i manipulowanie elementami wirtualnymi.
Trwałość kotwicy
Możliwość zapisywania i przywracania punktów zakotwiczenia w wielu sesjach, co pozwala na trwałe i spójne umieszczanie wirtualnych treści w środowisku.
Śledzenie obiektów
Możliwość śledzenia myszy, klawiatury i innych obiektów w rzeczywistym świecie.
Tekstury głębi
Generowanie map głębi, które zawierają informacje o odległości między aparatem a obiektami w scenie, co umożliwia uzyskanie bardziej realistycznych efektów zasłaniania i interakcji.
Widok otoczenia
Możliwość łączenia nagrań z kamery w świecie rzeczywistym z treściami wirtualnymi, co pozwala tworzyć środowisko mieszanej rzeczywistości, które płynnie łączy świat fizyczny i cyfrowy.
Siatka sceny
Możliwość uzyskania siatki 3D otoczenia, która może być używana do fizyki, okluzji i innych interakcji uwzględniających otoczenie.
Przekazywanie warstwy kompozycji
Umożliwia kompozycję z przezroczystym wycięciem w kształcie wielokąta, która może służyć do wprowadzania obiektów ze świata rzeczywistego do sceny.
Śledzenie twarzy
Możliwość śledzenia cech twarzy użytkownika, co pozwala tworzyć bardziej realistyczne i wyraziste awatary oraz wirtualne postacie.
Śledzenie wzroku
Określa położenie i orientację oka użytkownika, co ma na celu zwiększenie realizmu pozycji oczu awatarów.
Śledzenie rąk
Możliwość śledzenia pozycji i ruchu rąk użytkownika.
Siatka dłoni
Dokładnie odwzorowuje dłonie użytkownika w postaci siatki o niskiej liczbie wielokątów. Zoptymalizowany pod kątem dostarczania z platformy do aplikacji, aby zapewnić jak najlepszą wydajność. Jest to alternatywa dla innych rozszerzeń, które używają pozycji wiązania i wag mieszania.
Szacowanie oświetlenia
Używane w modelach oświetlenia, aby dopasować je do rzeczywistych warunków oświetleniowych użytkownika.

Obsługiwane urządzenia wejściowe

Android XR obsługuje też te urządzenia wejściowe:

Interakcja z dłonią
Rozpoznawanie określonych gestów rękami, takich jak szczypanie, przesuwanie i wskazywanie, umożliwiające użytkownikom interakcję z wirtualnymi obiektami za pomocą gestów i ruchów rąk.
Interakcja za pomocą wzroku
Możliwość śledzenia ruchów gałek ocznych użytkownika, dzięki czemu może on wybierać wirtualne obiekty i wchodzić z nimi w interakcję za pomocą wzroku.
Kontrolery ruchu 6DoF
Możliwość śledzenia pozycji i ruchu kontrolerów wraz z powiązaniami przycisków i pada kierunkowego w celu wywoływania działań lub zdarzeń najechania kursorem w aplikacji.
Interakcja z myszą
Możliwość interakcji użytkowników z obiektami za pomocą wskaźnika myszy w przestrzeni 3D

Obsługiwane funkcje związane z wydajnością

Android XR obsługuje te funkcje związane z wydajnością.

Foveacja śledzona wzrokiem
Zezwala aplikacji na renderowanie treści w wyższej rozdzielczości tylko w punkcie, na którym skupiają się oczy.
Zakrzywienie przestrzeni
Wykorzystuje wektory prędkości i informacje o teksturze głębi do generowania klatek pośrednich, co skutecznie zwiększa liczbę klatek na sekundę wymaganą do utrzymania zaangażowania użytkowników.
Dane dotyczące skuteczności
Podaje dane o wydajności Androida XR w czasie działania bieżącego urządzenia XR, kompozytora i aplikacji XR. Obejmuje to czas renderowania klatki przez procesor, czas renderowania klatki przez GPU, wykorzystanie GPU, częstotliwość procesora, liczbę klatek na sekundę i inne.

Pełną listę obsługiwanych funkcji i rozszerzeń znajdziesz w omówieniu funkcji OpenXR.

Obsługiwane wyszukiwarki

Unity

Obsługa Unity w Androidzie XR, oparta na OpenXR, umożliwia deweloperom tworzenie środowisk przy użyciu Unity 6. Więcej informacji o tworzeniu aplikacji XR za pomocą Unity znajdziesz w omówieniu Unity.


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.