Freigeben über


Plattformübergreifende Verwendung des XR SDK-Plug-In-Systems von Unity

Die anfängliche Entwicklung der World Locking Tools zielte auf die HoloLens-Gerätefamilie über die XR.WSA-APIs (Windows Store-App „VR/AR“) von Unity ab. Dies gehört zu dem, was gemeinhin als Legacy-XR-Schnittstelle von Unity oder als integrierte VR-Unterstützung von Unity bezeichnet wird.

Unity hat inzwischen seine XR-Plug-In-Architektur eingeführt, deren Ziel es ist, plattformübergreifende Abstraktionen bereitzustellen, die Entwicklern Zugriff auf gängige Features für alle verfügbaren VR- und AR-Geräte bieten.

Während dieser Übergangsphase hat WLT sowohl die Legacy-XR-Schnittstelle für HoloLens als auch AR Subsystems/XR Plugin Management für plattformübergreifende Anwendungen unterstützt. Es ist zu beachten, dass die Legacy-XR-Schnittstelle seit Unity 2019 als veraltet eingestuft ist und ab Unity 2020 nicht mehr unterstützt wird.

WLT unterstützt derzeit AR-Subsysteme der Version 2.X.Y für Unity 2019.4 (LTS) und XR Plugin Management-Version 4.0.7 und höher für Unity 2020.3 (LTS). Die Unterstützung weiterer Versionen wird in späteren Versionen eingeführt.

Umstellung von WLT auf XR SDK als Ziel

Die Ausrichtung von WLT auf XR SDK ist denkbar einfach. Konfigurieren Sie zunächst Ihr Projekt für die Verwendung des XR-Plug-In-Systems.

Wenn Sie MRTK verwenden, befolgen Sie diese Anweisungen. Weitere Tipps und Hinweise finden Sie weiter unten in diesem Artikel.

Wenn Sie nicht MRTK verwenden, folgen Sie diesen etwas komplizierteren Anweisungen.

In beiden Fällen wird das XR Plug-in Management-System von Unity installiert und aktiviert und ein für Ihre Plattform geeignetes XR Plug-in provider-System installiert und ausgewählt.

Sobald die notwendigen Ressourcen installiert sind, ändern Sie den Typ des Ankersubsystems im World Locking Tools-Kontext in Ihrer Szene.

Automatische Auswahl

Wenn Sie das Skript Mixed Reality => World Locking Tools => Configure scene ausführen, wird basierend auf der Konfiguration Ihres Projekts und Ihrer Szene das richtige Ankersubsystem ausgewählt. Das Skript Configure scene kann bedenkenlos wiederholt ausgeführt werden. Wenn die Szene bereits richtig konfiguriert ist, werden keine Änderungen vorgenommen.

Manuelle Auswahl

  1. Wechseln Sie in Ihrer anfänglichen (oder globalen) Szene zum GameObject von WorldLockingManager.
  2. Suchen Sie im Inspector nach WorldLockingContext.
  3. Öffnen Sie die Einstellungen für „Anchor Management“ (Ankerverwaltung).
  4. Stellen Sie sicher, dass das Kontrollkästchen „Use Defaults“ (Standardwerte verwenden) deaktiviert ist.
  5. Ändern Sie den Typ von „Anchor Subsystem“ (Ankersubsystem) in XRSDK.

Wenn Ihr Projekt und Ihre Szene für die Verwendung von AR Foundation eingerichtet sind, wählen Sie stattdessen das Ankersubsystem AR Foundation. Die Azure Spatial Anchors-Beispiele zeigen eine ordnungsgemäße Konfiguration für die Verwendung von AR Foundation (derzeit eine Voraussetzung für ASA).

Der Abschnitt

Verwenden von MRTK mit WLT für XR SDK

MRTK bietet nicht nur einen enormen Wert für die Abstraktion von Benutzerinteraktionen in VR und AR, sondern vereinfacht zudem die Ausrichtung von Geräten über das XR SDK erheblich. Im Folgenden finden Sie Hinweise, die sich bei der Einrichtung von MRTK für bestimmte Geräte als hilfreich erweisen können.

Hierbei wird davon ausgegangen, dass das Ankersubsystem für die WLT-Ankerverwaltung gemäß den Beschreibungen im vorherigen Abschnitt ordnungsgemäß festgelegt wurde.

Achten Sie darauf, Mixed Reality Toolkit => Utilities => UnityAR => Update Scripting Defines auszuführen, wenn Sie die Plug-In-Ziele ändern.

Setup für das Windows XR-Plug-In (HoloLens)

Vollständige Anweisungen finden Sie unter Erste Schritte mit MRTK und XR SDK.

Wenn Sie im WLT-Projekt arbeiten, können Sie für den Einstieg das von WLT bereitgestellte „WLT HL2 MRTKProfile“ für HoloLens2 oder das „WLT AR MRTKProfile“ für mobile Geräte verwenden.

WLT mit Verwendung des Windows XR-Plug-Ins wurde für Unity 2019.4 und Unity 2020.3 mit den folgenden Versionen getestet:

  • XR Plugin Management: v3.2.16 (funktioniert erwartungsgemäß mit v3.X.Y, X >= 2)
  • Windows XR-Plug-In: v2.4.1 (vor v2.4.1 Anker wurden beschädigt. Es wird erwartet, dass v2.4.Y, Y>=1, v2 funktioniert. X.Y, X>=1).
  • Mixed Reality OpenXR Plugin: v1.2.0 (frühere Versionen haben mit kleineren Problemen gearbeitet. Das neueste MR OpenXR Plugin wird dringend empfohlen.)

Sie benötigen nur eine der beiden Komponenten, Windows MR Plugin oder Mixed Reality OpenXR Plugin.

Setup für das ARCore XR-Plug-In (Android)

Um ein Android XR-Plug-In zum Steuern einer MRTK-AR-Anwendung zu verwenden, befolgen Sie die Anweisungen zum Konfigurieren von MRTK für iOS und Android.

HINWEIS: Sie benötigen ALLE der folgenden Elemente:

  • XR Plugin Management (getestet für v3.2.16, erwartete Funktion mit v3.X.Y, X>=2)
  • AR-Subsysteme (getestet für v2.1.3, erwartete Funktion mit v2.X.Y, X>1)
  • AR Core XR-Plug-In (getestet für v2.1.12, erwartete Funktion mit v2.X.Y, X>1)
  • AR Foundation (getestet für v2.1.10, erwartete Funktion mit v2.X.Y, X>1)

Es wird empfohlen, für den Einstieg das von WLT bereitgestellte „WLT AR MRTKProfile“ zu verwenden.

HINWEIS: Wenn Sie eine Fehlermeldung vom Typ manifest-merger failed erhalten, befolgen Sie diese Anweisungen: https://developers.google.com/ar/develop/unity/android-11-build

Setup für andere XR-Plug-Ins (ARKit, Oculus usw.)

Die Einrichtung für andere Plattformen entspricht möglicherweise der Einrichtung für ARCore, wurde aber nicht getestet. Wenn Sie Zugang zu solchen Geräten haben und die Möglichkeit, sie auszuprobieren, wäre jedwedes Feedback eine große Hilfe für die Community und sehr willkommen.