Android XR unterstützt Apps, die mit OpenXR entwickelt wurden, da es die OpenXR 1.1-Spezifikation und ausgewählte Anbietererweiterungen unterstützt. OpenXR ist ein offener Standard, mit dem Sie immersive und interaktive Erlebnisse mit einer gemeinsamen Reihe von APIs auf einer Vielzahl von XR-Geräten erstellen können.
Funktionen
Android XR unterstützt Funktionen, mit denen Sie Apps entwickeln können, die die einzigartigen Funktionen von XR-Geräten mit OpenXR voll ausschöpfen. Dazu gehören:
- Trackables
- Unterstützt die Ebenenerkennung, mit der flache Oberflächen in der Umgebung erkannt und verfolgt werden können. So lassen sich virtuelle Objekte in Bezug auf die reale Welt platzieren. Außerdem werden Anker unterstützt, also virtuelle Referenzpunkte, die an realen Objekten oder Orten angebracht werden können. So bleibt der virtuelle Inhalt auch dann genau positioniert und ausgerichtet, wenn sich der Nutzer bewegt.
- Raycasting
- Eine Technik, mit der der Schnittpunkt zwischen einem virtuellen Strahl und Objekten in der Szene bestimmt wird. Dies ermöglicht Interaktionen wie das Auswählen und Bearbeiten virtueller Elemente.
- Ankerpersistenz
- Die Möglichkeit, Anker über mehrere Sitzungen hinweg zu speichern und wiederherzustellen, um virtuelle Inhalte dauerhaft und konsistent in der Umgebung zu platzieren.
- Objekt-Tracking
- Maus, Tastatur und andere Objekte in der realen Welt verfolgen
- QR-Code-Tracking
- QR‑Codes in der physischen Umgebung erkennen und ihre Daten decodieren.
- Tiefentexturen
- Generierung von Tiefenkarten, die Informationen über die Entfernung zwischen der Kamera und Objekten in der Szene liefern und so realistischere Verdeckungs- und Interaktionseffekte ermöglichen.
- Passthrough
- Die Möglichkeit, reale Kameraaufnahmen mit virtuellen Inhalten zu kombinieren und so ein Mixed Reality-Erlebnis zu schaffen, das die physische und die digitale Welt nahtlos miteinander verbindet.
- Szenen-Meshing
- Die Möglichkeit, ein 3D-Mesh der Umgebung zu erstellen, das für Physik, Verdeckung und andere weltbezogene Interaktionen verwendet werden kann.
- Passthrough für Kompositionsebene
- Ermöglicht das Ausschneiden von Polygonen in einer Ebene, um reale Objekte in eine Szene einzufügen.
- Gesichtstracking
- Die Möglichkeit, die Gesichtszüge des Nutzers zu erfassen, um realistischere und ausdrucksstärkere Avatare und virtuelle Charaktere zu erstellen.
- Eye-Tracking
- Liefert die Position und Ausrichtung des Auges des Nutzers, um die Augenposition für Avatare realistischer zu gestalten.
- Hand tracking
- Die Möglichkeit, die Position und Bewegung der Hände des Nutzers zu erfassen.
- Hand-Mesh
- Stellt die Hände des Nutzers als Low-Poly-Mesh dar. Für die Übermittlung von der Plattform zur Anwendung optimiert, um die bestmögliche Leistung zu erzielen. Das ist eine Alternative zu anderen Erweiterungen, die eine Bind-Pose und Blend-Gewichtungen verwenden.
- Schätzung der Lichtverhältnisse
- Wird für Beleuchtungsmodelle verwendet, um die Beleuchtungsbedingungen in der realen Welt des Nutzers zu berücksichtigen.
Unterstützte Eingabegeräte
Android XR unterstützt auch die folgenden Eingabegeräte.
- Handinteraktion
- Die Erkennung bestimmter Handbewegungen wie Zusammenziehen, Wischen und Zeigen, die es Nutzern ermöglichen, mit virtuellen Objekten durch Gesten und Handbewegungen zu interagieren.
- Blicksteuerung
- Die Möglichkeit, die Augenbewegungen des Nutzers zu verfolgen, sodass er virtuelle Objekte durch Blicke auswählen und mit ihnen interagieren kann.
- 6DoF‑Bewegungscontroller
- Die Möglichkeit, die Position und Bewegung des Controllers sowie die D-Pad- und Schaltflächenzuweisungen zum Auslösen von Aktionen oder Hover-Ereignissen in der App zu erfassen.
- Mausinteraktion
- Die Möglichkeit für Nutzer, mit Objekten über einen Mauszeiger im 3D-Raum zu interagieren
Unterstützte Leistungsfunktionen
Android XR unterstützt die folgenden leistungsbezogenen Funktionen.
- Foveation mit Eye-Tracking
- Ermöglicht einer App, Inhalte mit höherer Auflösung nur am Fokuspunkt der Augen zu rendern.
- Space Warp
- Verwendet Geschwindigkeitsvektoren und Informationen zur Tiefenstruktur, um Zwischenframes zu generieren, wodurch die Framerate effektiv erhöht wird, die erforderlich ist, damit Nutzer in Ihre Erlebnisse eintauchen können.
- Leistungsmesswerte
- Bietet Android XR-Leistungsmesswerte zur Laufzeit des aktuellen XR-Geräts, Compositors und der XR-App. Dazu gehören CPU-Frame-Time, GPU-Frame-Time, GPU-Auslastung, CPU-Frequenz, Frames pro Sekunde und mehr.
Eine vollständige Liste der unterstützten Funktionen und Erweiterungen finden Sie in der OpenXR-Funktionsübersicht.
Unterstützte Engines
Die folgenden Engines werden für die OpenXR-Entwicklung mit Android XR unterstützt.
Unity
Die auf OpenXR basierende Unity-Unterstützung von Android XR ermöglicht es Entwicklern, Erlebnisse mit Unity 6 zu erstellen. Weitere Informationen zum Erstellen von XR-Apps mit Unity
OpenXR™ und das OpenXR-Logo sind Marken von The Khronos Group Inc. und sind in China, der Europäischen Union, Japan und dem Vereinigten Königreich als Marke eingetragen.