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.