Versionshinweise zu Microsoft Mixed Reality Toolkit 2.6

Wichtig

Es gibt ein bekanntes Compilerproblem, das sich auf Anwendungen auswirkt, die für Microsoft HoloLens 2 mit ARM64 erstellt wurden. Dieses Problem wird behoben, indem Visual Studio 2019 auf Version 16.8 oder höher aktualisiert wird. Wenn Sie Visual Studio nicht aktualisieren können, importieren Sie das com.microsoft.mixedreality.toolkit.tools Paket, um eine Problemumgehung anzuwenden.

Neuerungen in Version 2.6.2

Korrigiert die übergeordneten Elemente des räumlichen Gitters.

Behebt das Problem, dass räumliche Gitter nach dem Verschieben des Mixed Reality Playspace-Objekts (z. B. über einen Teleport) nicht ordnungsgemäß gefunden wurden.

Neuerungen in Version 2.6.1

Behebt, dass OpenXR nicht auf HoloLens 2/UWP ausgeführt wird

Behebt eine Regression, die verhinderte, dass die OpenXR-Unterstützung von MRTK auf UWP ausgeführt werden kann.

Behebt Leap Motion ObjectManipulator wird nicht gedreht

Behebt eine Regression, bei der die Drehung einer Leap Motion-Hand vom ObjectManipulator-Skript nicht berücksichtigt wurde.

Beispiel für Szenenupdates

Updates die Beispielszene zum Verstehen der Szene, um den ausgelieferten Zustand des Unity-Plug-Ins korrekt widerzuspiegeln. Aktualisiert außerdem das Beispiel so, dass keine Abhängigkeit mehr von der zu importierenden Beispielszene für räumliches Bewusstsein vorhanden ist. Vor dem Update auf Version 2.6.1 sollten Sie die importierten Szenenverständnis- und Raumerkennungsbeispiele löschen, wenn sie in Ihrem Projekt vorhanden sind, um mögliche Konflikte zu vermeiden. Wenn Sie diese Beispiele nicht entfernt haben und Konflikte im Zusammenhang mit denen in der Konsole auftreten, entfernen Sie bitte beide Beispiele (oder den Assets/Samples/Mixed Reality Toolkit Examples Ordner), und versuchen Sie dann erneut, zu importieren.

Updates die Dialogbeispielszene, um die aktuellen Dialogszenarien korrekt zu beschreiben.

Neuerungen in Version 2.6.0


Hinzufügen von Unterstützung für OpenXR

Die anfängliche Unterstützung für das OpenXR-Vorschaupaket von Unity und das Mixed Reality OpenXR-Paket von Microsoft wurde hinzugefügt. Weitere Informationen finden Sie auf der Seite zu den ersten Schritten für MRTK/XRSDK, im Forumbeitrag von Unity oder in der Microsoft-Dokumentation .

Wichtig

OpenXR in Unity wird nur in Unity 2020.2 und höher unterstützt.

Derzeit werden auch nur x64- und ARM64-Builds unterstützt.

Asset Swap-Hilfsprogramm

Tauschen Sie mehrere Ressourcen in einer Unity-Szene mit dem neuen Hilfsprogramm für den Ressourcentausch aus.

HP Motion Controller jetzt mit MRTK unterstützt

Controller für den HP Reverb G2 funktionieren jetzt nativ mit MRTK.

Experimentelles interaktives Element + Zustandsschnellansicht

Interactive Element ist ein vereinfachter zentralisierter Einstiegspunkt zum MRTK-Eingabesystem. Sie enthält Zustandsverwaltungsmethoden, Ereignisverwaltung und die Zustandseinstellungslogik für Kerninteraktionszustände. Weitere Informationen finden Sie in der Dokumentation zu interaktiven Elementen.

InteractiveElementAddCoreState

Die Zustandsschnellansicht ist eine Animationskomponente, die vom interaktiven Element abhängt. Diese Komponente erstellt Animationsclips, legt Keyframes fest und generiert einen Animator State Machine. Weitere Informationen finden Sie in der Dokumentation zur Zustandsschnellansicht.

StateVisualizerColorChangeOnFocus

Teleportation mit der Teleportgeste jetzt auf allen Plattformen unterstützt

Benutzer können jetzt die Teleportgeste verwenden, um sich auf allen Plattformen im Spielbereich zu bewegen. Zum Teleportieren mit einem Controller auf MR-Geräten mit Standardkonfigurationen verwenden Sie den Fingerabdruckstick. Um mit handgelenkten Händen zu teleportieren, machen Sie eine Geste, wobei Ihre Handfläche mit dem Index nach oben gerichtet ist und der Daumen nach außen heftet, und schließen Sie die Teleportierung durch Curling des Zeigefingers ab. Informationen zum Teleportieren mit Eingabesimulation finden Sie in unserer aktualisierten Dokumentation zum Input Simulation Service.

Teleportgeste

Scene Understanding jetzt im MRTK als experimenteller Raumerkennungsbeobachter verfügbar

Die experimentelle Unterstützung von Scene Understanding wird in MRTK 2.6 eingeführt. Benutzer können die Szenenverständnisfunktionen von HoloLens 2 als Raumbeobachter in MRTK-basierte Projekte integrieren. Weitere Informationen finden Sie in der Dokumentation zu Scene Understanding .

Wichtig

Scene Understanding wird nur in HoloLens 2 und Unity 2019.4 und höher unterstützt.

Dieses Feature erfordert das Scene Understanding-Paket, das jetzt über das Mixed Reality Feature Tool verfügbar ist. Wenn Sie das Mixed Reality FeatureTool verwenden oder anderweitig über UPM importieren, importieren Sie das Beispiel Demos – SpatialAwareness, bevor Sie das Beispiel Experimental – SceneUnderstanding aufgrund eines Abhängigkeitsproblems importieren. Weitere Informationen finden Sie in diesem GitHub-Problem .

Grundlegendes zu Szenen

Unterstützung für das Wechseln von Laufzeitprofilen

MRTK ermöglicht nun den Profilwechsel sowohl vor der Initialisierung des MRTK-instance (d. h. pre MRTK-Initialisierungsprofilschalter) als auch nach der aktiven Verwendung eines Profils (d. h. aktiver Profilwechsel). Der frühere Switch kann verwendet werden, um ausgewählte Komponenten basierend auf den Funktionen der Hardware zu aktivieren, während letzteres verwendet werden kann, um die Benutzeroberfläche zu ändern, wenn der Benutzer einen Teil der Anwendung eingibt. Weitere Informationen und Codebeispiele finden Sie in der Dokumentation zum Profilwechsel .

Richtungsanzeige und Folge-Solver, die von experimentell abgestuft wurden

Zwei neue Solver sind bereit für den Einsatz mit mrtk mainline.

Direktional Indicator Solver

Diplom-Handcoach mit experimentellem Abschluss

Das Hand Coach-Feature ist jetzt bereit für die Verwendung mit mrtk mainline.

Hand Coach-Beispiel

Dialogsteuerelemente, gestaffelt von experimentellen

Dialogsteuerelemente sind jetzt bereit für die Verwendung mit mrtk mainline.

Dialogsteuerelemente

Pulse Shader graduiert aus dem Experimentellen

Die Pulse-Shaderskripts haben eine Abstufung vom experimentellen Skript abgeschlossen. Weitere Informationen finden Sie in der Dokumentation zu Pulse Shadern.

MRTK_SpatialMesh_Pulse

Verbesserungen des Eingabeaufzeichnungsdiensts

InputRecordingService und InputPlaybackService kann jetzt Eingaben für Blicke aufzeichnen und wiedergeben. Die Aufzeichnung wurde optimiert, um eine konsistente Framerate während des gesamten Aufzeichnungszeitraums sicherzustellen, während die Größe der Aufzeichnungsdatei und die Zeitersparnis ebenfalls um etwa 50 % reduziert werden. Das Speichern und Laden von Aufzeichnungsdateien kann jetzt asynchron erfolgen. Beachten Sie, dass sich das Dateiformat der Aufzeichnung in dieser MRTK-Version geändert hat. Weitere Informationen zu den neuen Spezifikationen der Version 1.1 finden Sie hier .

Lesemodus

Unterstützung für den Lesemodus für HoloLens 2 hinzugefügt. Der Lesemodus reduziert das Sichtfeld des Systems, eliminiert jedoch eine Skalierung der Unity-Ausgabe. Ein von Unity gerendertes Pixel entspricht einem projizierten Pixel auf HoloLens 2. Anwendungsautoren sollten Tests mit mehreren Personen durchführen, um sicherzustellen, dass dies ein Kompromiss ist, den sie in ihrer App wünschen.

Windows Mixed Reality Lesemodus

Unterstützung für 3D-App-Startprogramme auf UWP

Fügt die Möglichkeit hinzu, ein 3D-App-Startfeld für UWP festzulegen. Diese Einstellung wird sowohl im MRTK-Buildfenster als auch in den MRTK-Projekteinstellungen unter Buildeinstellungen verfügbar gemacht. Es wird während des Builds in Unity automatisch in das Projekt geschrieben.

Buildeinstellungen

Aktuelle Änderungen

Bestimmte Felder importierter GLTF-Objekte werden jetzt großgeschrieben.

Aufgrund von Deserialisierungsproblemen beginnen einige Felder importierter GLTF-Objekte jetzt mit Großbuchstaben. Die betroffenen Felder sind (in ihren neuen Namen): ComponentType, , PathInterpolation, , TargetType, Mode, WrapSMagFilterMinFilter, , . WrapT

Binärdatei für Eingabeanimation hat ein aktualisiertes Format der Version 1.1

Die binärdatei für Eingabeanimation, die von InputRecordingService und InputPlaybackServiceverwendet wird, verfügt jetzt über ein aktualisiertes Dateiformat, um die optimierungen zu ermöglichen, die an diesen beiden Diensten vorgenommen wurden. Weitere Informationen zu den neuen Spezifikationen der Version 1.1 finden Sie hier .

MSBuild für Unity-Unterstützung

Die Unterstützung für MSBuild für Unity wurde ab Version 2.5.2 entfernt, um den neuen Paketleitfaden von Unity zu entsprechen.

Bekannte Probleme

OpenXR

Es gibt derzeit ein bekanntes Problem mit Holographic Remoting und OpenXR, bei dem Handgelenke nicht konsistent verfügbar sind. Darüber hinaus sind die Eyetracking-Beispielszenen derzeit nicht kompatibel, obwohl eyetracking funktioniert .

Einige Mixed Reality Toolkit Standard-Shader-Features erfordern das Foundation-Paket.

Wenn sie über den Unity-Paket-Manager importiert werden, befinden sich die MRTK-Standard-Shader-Hilfsprogrammskripts (z. B. HoverLight.cs) nicht gemeinsam mit dem Shader im Standardressourcenpaket. Um auf diese Funktionalität zugreifen zu können, müssen Anwendungen das Foundation-Paket importieren.

CameraCache kann beim Herunterfahren eine neue Kamera erstellen

In einigen Situationen (z. B. bei Verwendung des LeapMotion-Anbieters im Unity-Editor) ist es möglich, dass CameraCache die MainCamera beim Herunterfahren neu erstellt. Weitere Informationen finden Sie in diesem Problem .

FileNotFoundException, wenn Beispiele über den Unity-Paket-Manager importiert werden

Abhängig von der Länge des Projektpfads generiert der Import von Beispielen über den Unity-Paket-Manager möglicherweise FileNotFoundException-Meldungen in der Unity-Konsole. Die Ursache hierfür ist der Pfad zur "fehlenden" Datei, der länger als MAX_PATH (256 Zeichen) ist. Um dies zu beheben, kürzen Sie die Länge des Projektpfads.

Es wurde kein Spatializer angegeben. Räumlicher Sound wird von der Anwendung nicht unterstützt.

Die Warnung "Kein Spatializer wurde angegeben" wird angezeigt, wenn kein Audioräumisierungsprogramm konfiguriert ist. Dies kann auftreten, wenn kein XR-Paket installiert ist, da Unity Spatializer in diesen Paketen enthält.

Stellen Sie folgendes sicher, um die Lösung zu beheben:

  • Fenster>Im Paket-Manager ist mindestens ein XR-Paket installiert.

  • Mixed RealityToolkit-Hilfsprogramme>>Konfigurieren des Unity-Projekts und Treffen einer Auswahl für Audio Spatializer

    Wählen Sie Audio Spatializer aus.

NullReferenceException: Objektverweis nicht auf eine instance eines Objekts festgelegt (SceneTransitionService.Initialize)

In einigen Situationen kann das Öffnen EyeTrackingDemo-00-RootScene eine NullReferenceException in der Initialize-Methode der SceneTransitionService-Klasse verursachen. Dieser Fehler ist darauf zurückzuführen, dass das Konfigurationsprofil des Szenenübergangsdiensts nicht festgelegt wurde. Führen Sie die folgenden Schritte aus, um die Lösung zu beheben:

  • Navigieren Zum MixedRealityToolkit Objekt in der Hierarchie
  • Wählen Sie im Fenster Inspektor die Option Extensions
  • Wenn nicht erweitert, erweitern Sie Scene Transition Service
  • Legen Sie den Wert von Configuration Profile auf MRTKExamplesHubSceneTransitionServiceProfile fest.

Korrektur des Szenenübergangsprofils

Oculus Quest

Es gibt derzeit ein bekanntes Problem bei der Verwendung des Oculus XR-Plug-Ins mit, wenn eigenständige Plattformen als Ziel verwendet werden. Überprüfen Sie die Oculus-Fehlernachverfolgung/-foren/Versionshinweise auf Updates.

Der Fehler ist mit diesem Satz von drei Fehlern gekennzeichnet:

Oculus XR-Plug-In-Fehler

UnityUI und TextMeshPro

Es gibt ein bekanntes Problem für neuere Versionen von TextMeshPro (1.5.0 oder höher oder 2.1.1 und höher), bei dem der Standardschriftgrad für Dropdowns und den Fettschriftzeichenabstand geändert wurde.

TMP-Image

Sie können dies umgehen, indem Sie auf eine frühere Version von TextMeshPro herabstufen. Weitere Informationen finden Sie unter Issue #8556 .