Die Zukunft von XR liegt in der interaktiven Nutzung – und die Tools von Unity sind dafür bereit

Mitautoren: Isaac Seah (leitender technischer Produktmanager), Alexandra Serralta (leitende Softwareentwicklerin), Ketki Jadhav (Produktdesignerin) und Dave Ruddell (leitender Manager, Softwareentwicklung)
Warum „Hands-First“ die Zukunft von XR ist
Hand-Tracking wird in XR bereits seit mehreren Jahren als Eingabemethode unterstützt, doch in den meisten Projekten wird es nach wie vor als zweitrangig betrachtet und erst hinzugefügt, nachdem das Kern-Erlebnis bereits auf der Grundlage von Controllern entwickelt wurde. Für eine wachsende Zahl von Anwendungsfällen macht diese Priorität keinen Sinn mehr. Spiele, die auf Gesten, körperlicher Interaktion oder der direkten Interaktion mit Objekten basieren, lassen sich von Natur aus besser mit den Händen steuern: natürlicher, intuitiver und mit einem Controller unmöglich nachzuahmen.
Um dieses Ziel zu erreichen, mussten in der Vergangenheit zwei zentrale technische Herausforderungen bewältigt werden: Die Entwicklung zuverlässiger benutzerdefinierter Handgesten erforderte einen erheblichen Aufwand bei der Skripterstellung, und die Optimierung der Handinteraktionen gestaltete sich schwierig, wenn das Headset nicht physisch in der Nähe war. Zwei Neuerungen in den XR-Paketen von Unity gehen direkt auf beide Aspekte ein. Mit der Funktion „XR Hand Capture“ aus dem XR Hands-Paket können Sie reale Handhaltungen direkt auf dem Gerät aufzeichnen und als wiederverwendbare Gesten-Assets in Unity importieren. Die „Hands Simulation“, die dem XR Interaction Simulator im XR Interaction Toolkit hinzugefügt wurde, bietet im Unity Editor eine umfassende Entwicklungsumgebung für die Handverfolgung, sodass Sie auch ohne Headset iterieren können.
In diesem Beitrag wird erläutert, wie beide Funktionen funktionieren, wann man sie einsetzt und wie man sie in ein bestehendes Projekt integriert.
XR Hands-Erfassung
Das XR Hands-Paket stellt über das XRHandSubsystem Gelenkdaten pro Frame bereit. Um auf der Grundlage dieser Daten eine Geste zu erstellen, muss eine Reihe von Bedingungen für Gelenkwinkel und Fingerform definiert werden, die, wenn sie gleichzeitig erfüllt sind, eine erkannte Pose ergeben. Für einfache Gesten wie „Pinch“ und „Poke“ enthält das Paket gebrauchsfertige Implementierungen. Bei allen benutzerdefinierten Einstellungen erforderte der bisherige Ansatz eine Konfiguration für jeden einzelnen Finger und dessen Form, was bedeutete, dass die Iteration vollständig auf dem Gerät selbst erfolgen musste.
Dieser manuelle Prozess war zwar grundlegend, aber im Vergleich zu den Möglichkeiten, die XR Hands heute bietet, langsam und weniger zuverlässig. Eine präzise Gestenerkennung, die für Spielmechaniken wie charakteristische Posen, die Manipulation von 3D-Objekten oder die präzise Steuerung der Benutzeroberfläche entscheidend ist, war schwer zu erreichen, wenn man jede Fingerform manuell von Hand definieren musste. Diese Annäherungen führten zu Lösungen, deren Erzeugung zeitaufwendig war, die bei unterschiedlichen Handformen weniger stabil waren und denen das natürliche, intuitive Gefühl fehlte, das für wirklich fesselnde, handzentrierte Erlebnisse unerlässlich ist.

So funktioniert es
XR Hands Capture löst dieses Problem, indem es die tatsächlichen Gelenkdaten aufzeichnet, die vom XRHandSubsystem erzeugt werden, während Sie eine Pose auf dem Gerät ausführen, und anschließend aus dieser Aufzeichnung ein XRHandShape-Asset generiert. Sie entwickeln Gesten auf der Grundlage von Referenzdaten statt von Annäherungswerten, was bedeutet, dass die daraus resultierenden Interaktionen unabhängig von der Handgröße und unterschiedlichen Bewegungsabläufen besser funktionieren und sich so anfühlen, wie sie sich anfühlen sollen.
Der Arbeitsablauf:
- Importieren Sie das HandCapture-Beispiel aus dem XR Hands-Paket im Paket-Manager.
- Starten Sie die Beispielszene auf Ihrem OpenXR-Gerät und öffnen Sie sie.
- Nimm die Pose ein, die du fotografieren möchtest. Die Szene zeichnet Live-Gelenkdaten aus dem XRHandSubsystem in eine XRHandCaptureSequence auf.
- Importiere die Aufzeichnung über das Inspektorfenster „XR Hand Capture“ (Fenster > XR > XR Hand Capture) in den Unity-Editor.
- Extrahieren Sie das XRHandShape-Asset – eine serialisierte Darstellung der Handhaltung, auf die jede StaticHandGesture-Komponente oder benutzerdefinierte Erkennungslogik zugreifen kann.
- Passen Sie die Toleranzen bei Bedarf an und nehmen Sie zur Verfeinerung eine neue Aufzeichnung vor.

Da sowohl die „XRHandCaptureSequence“ als auch die „XRHandShape“ aus echten Aufnahmedaten generiert werden, spiegelt die von Ihnen erstellte Gestenbibliothek die tatsächlichen Bewegungen der Hände wider, sodass sich diese Interaktionen für den Spieler natürlich anfühlen. Das bedeutet auch, dass Nicht-Techniker an der Erstellung von Gesten mitwirken können: Ein Designer oder Animator kann Posen direkt auf dem Gerät aufzeichnen und optimieren, ohne sich mit dem Code befassen zu müssen. So bleiben die Designer und Animatoren – also genau diejenigen, denen das Gefühl einer Interaktion am meisten am Herzen liegt – direkt in die Gestaltung eingebunden.
Hand-Simulation im XR-Interaktionssimulator
Mit dem XR Interaction Simulator im XR Interaction Toolkit können Entwickler XR-Erlebnisse direkt im Unity-Editor ausführen, ohne ein physisches Gerät zu benötigen. Dies ist besonders in frühen Entwicklungsphasen nützlich, in denen das Anlegen eines Headsets bei jedem Testdurchlauf einen erheblichen Zeitaufwand bedeutet. Bis vor kurzem unterstützte es nur Eingaben über den Controller. Projekte, die auf Hand-Tracking basierten, hatten keine Entsprechung, was bedeutete, dass die Entwicklung von Hand-Interaktionen grundsätzlich vom Headset abhängig war. Neben den standardmäßig integrierten Handgesten wie Antippen, Zusammenziehen und Greifen kannst du nun auch deine eigenen benutzerdefinierten Gesten direkt im Simulator testen – eine Funktion, die du außerhalb der XR-Tools von Unity nirgendwo sonst findest.

Erste Schritte
Laden Sie zunächst die neueste Version von Unity (6.3 oder neuer) herunter und fügen Sie diese Funktionen anschließend über den Unity Package Manager hinzu.
- XR Hands Capture ist im Lieferumfang des XR Hands-Pakets (Version 1.7 und höher) enthalten. Sie können die Software installieren oder auf die neueste Version aktualisieren und das Beispiel „HandCapture“ importieren, um loszulegen. Die vollständige Dokumentation und die API-Referenz finden Sie in der XR Hands-Dokumentation.
- Die Hands-Simulation ist im XR Interaction Simulator als Teil des XR Interaction Toolkit-Pakets (ab Version 3.5) und von XR Hands (ab Version 1.8) verfügbar. Installieren Sie die Software oder aktualisieren Sie sie auf die neueste Version und importieren Sie das Beispiel „XRI Starter Assets“. Einzelheiten zur Einrichtung finden Sie in der XRI-Dokumentation.
Als umfassenderen Ausgangspunkt bietet das „XR Interaction Toolkit Examples“ Referenzszenen, die gängige Interaktionsmuster mit den Händen abdecken. Wenn Sie speziell nach einer Community-Referenz für „XR Hands Capture“ suchen, hat Dilmer Valecillos ein Demo-Projekt zu „Hands Capture“ zusammengestellt, das einen Blick wert ist. Neugierig, was Entwickler mit Unity XR erschaffen? Schau mal.
Wie geht es weiter?
Die laufenden Arbeiten betreffen beide Pakete. Zu den Schwerpunkten von XR Hands gehören die Übereinstimmung der Posen-Daten mit der OpenXR-Spezifikation, die Unterstützung der „Palm Pose“-Erweiterung, die Zuordnung von Eingabeaktionen zu den Gesten „Pinch“, „Poke“ und „Aim“ sowie zu Geräteposen und die Optimierung der „Poke“-Interaktion. Außerdem erweitern wir die Unterstützung für OpenXR-Erweiterungen, die angeben, ob Handdaten aus der Kameraverfolgung der bloßen Hand oder aus einer controllerbasierten Schätzung stammen – dies ist relevant für Spiele, die ihre Spielmechanik daran anpassen möchten, wie ein Spieler physisch interagiert. Bei XRI investieren wir weiterhin in den XR Interaction Simulator als zuverlässigen Ersatz für Tests auf dem Gerät selbst, da die Zahl der Anwendungsfälle, bei denen die Benutzer das Gerät direkt in die Hand nehmen, zunimmt.
Seien Sie am 9. Juli um 12 Uhr ET bei unserem Livestream mit einem besonderen Gast von Meta dabei, um XR Hand Capture und den XRI Simulator in Aktion zu erleben – mit einer Live-Fragerunde und einem Ausblick auf die nächsten Schritte.