Konfigurieren von Mesh-Beobachtern für das Gerät – MRTK2

In diesem Leitfaden erfahren Sie, wie Sie den sofort einsatzbereiten Spatial Mesh Observer in MRTK konfigurieren, der die Windows Mixed Reality-Plattform unterstützt (z. B. HoloLens). Die Von Mixed Reality Toolkit bereitgestellte Standardimplementierung ist die WindowsMixedRealitySpatialMeshObserver-Klasse. Viele der Eigenschaften in diesem Artikel gelten jedoch für andere benutzerdefinierte Observer-Implementierungen.

Profileinstellungen

Die folgenden beiden Elemente müssen zuerst beim Konfigurieren eines Spatial Mesh Observer-Profils für das Spatial Awareness-System definiert werden.

  1. Die konkrete Implementierung des Beobachtertyps
  2. Liste der unterstützten Plattformen zum Ausführen dieses Beobachters

Hinweis

Alle Beobachter müssen die IMixedRealitySpatialAwarenessObserver-Schnittstelle erweitern.

Mesh Observer – Plattformtypen für allgemeine Einstellungen

Allgemeine Einstellungen

Allgemeine Einstellungen des Mesh-Beobachters Genraleinstellungen

Startverhalten

Das Startverhalten gibt an, ob der Beobachter beim ersten Instanziieren mit der Ausführung beginnt. Die zwei Optionen sind:

  • Automatischer Start : Der Standardwert, mit dem der Beobachter den Vorgang nach der Initialisierung beginnt
  • Manueller Start : Der Beobachter wartet darauf, dass er zum Start weitergeleitet wird.

Wenn Sie den manuellen Start verwenden, müssen Sie sie zur Laufzeit per Code fortsetzen und anhalten.

Updateintervall

Die Zeit (in Sekunden) zwischen Den Anforderungen an die Plattform zum Aktualisieren räumlicher Gitterdaten. Typische Werte liegen im Bereich von 0,1 und 5,0 Sekunden.

Ist stationärer Beobachter

Gibt an, ob der Beobachter stationär bleiben oder sich mit dem Benutzer bewegen und aktualisieren soll. Wenn true, bleibt das Observer Shape mit dem durch Beobachtungsausdehnungen definierten Volumen beim Start am Ursprung. Wenn false, folgt der Observer-Bereich dem Kopf des Benutzers als Ursprung des Shapes.

Es werden keine Gitterdaten für einen physischen Bereich außerhalb des Observer-Raums berechnet, wie durch die folgenden Eigenschaften definiert: Is Stationary Observer, Observer Shape* und Observation Extents.

Observer Shape

Die Beobachterform definiert den Typ des Volumens, das der Gitterbeobachter bei der Beobachtung von Gittern verwendet. Folgende Optionen werden unterstützt:

  • Axis Aligned Cube : Rechteckige Form, die an den Achsen des Weltkoordinatensystems ausgerichtet bleibt, wie beim Anwendungsstart bestimmt.
  • Benutzerbündiger Cube : Rechteckige Form, die sich rotiert, um auf das lokale Koordinatensystem des Benutzers auszurichten.
  • Kugel : Ein kugelförmiges Volumen mit einem Zentrum am Ursprung des Weltraums. Der X-Wert der Observation Extents-Eigenschaft wird als Radius der Kugel verwendet.

Beobachtungsausdehnungen

Die Beobachtungsausdehnungen definieren den Abstand vom Beobachtungspunkt, der beobachtet wird.

Physikeinstellungen

Gitterbeobachterphysikeinstellungen

Physikebene

Die Physikebene, auf der räumliche Gitterobjekte platziert werden, um mit den Unity Physics- und RayCast-Systemen zu interagieren.

Hinweis

Mixed Reality Toolkit reserviert standardmäßig Ebene 31 für die Verwendung durch Spatial Awareness-Beobachter.

Normalität neu berechnen

Gibt an, ob der Gitterbeobachter die Normaldaten des Gitternetzes nach der Beobachtung neu berechnet oder nicht. Diese Einstellung ist verfügbar, um sicherzustellen, dass Anwendungen Gitter mit gültigen Normaldaten auf Plattformen empfangen, die sie nicht mit Gittern zurückgeben.

Detailgradeinstellungen

Gitterbeobachter Detailebeneneinstellungen

Detailebene

Gibt den Detailgrad (LOD) der räumlichen Gitterdaten an. Die derzeit definierten Werte sind Grob, Fein und Benutzerdefiniert.

  • Grob: Hat einen geringeren Einfluss auf die Anwendungsleistung und ist eine ausgezeichnete Wahl für die Navigations-/Ebenensuche.

  • Mittel : Ausgewogene Einstellung häufig nützlich für Umgebungen, die die Umgebung kontinuierlich auf große Features, Böden und Wände sowie Verdeckungsdetails überprüfen.

  • Fein : Im Allgemeinen hat eine höhere Auswirkung auf die Anwendungsleistung und ist eine gute Option für Verschlüsse.

  • Benutzerdefiniert : Erfordert, dass die Anwendung die Eigenschaft Triangles/Cubic Meter angibt, und ermöglicht es Anwendungen, die Genauigkeit im Vergleich zu den Leistungsauswirkungen des räumlichen Gitterbeobachters zu optimieren.

Hinweis

Es ist nicht garantiert, dass alle Dreiecke/Kubikmeterwerte von allen Plattformen berücksichtigt werden. Experimente und Profilerstellungen werden dringend empfohlen, wenn sie eine benutzerdefinierte LOD verwenden.

Dreiecke pro Kubikmeter

Gültig, wenn sie die Benutzerdefinierte Einstellung für die Eigenschaft Detailebene verwenden und die Dreiecksdichte für das räumliche Gitter angibt.

Anzeigeeinstellungen

Anzeigeeinstellungen für Mesh-Beobachter

Anzeigeoption

Gibt an, wie räumliche Gitter vom Beobachter angezeigt werden sollen. Diese Werte werden unterstützt:

  • None: Observer rendert das Gitter nicht.
  • Sichtbar: Gitterdaten werden mithilfe des sichtbaren Materials sichtbar
  • Okklusion: Gitterdaten werden elemente in der Szene mit dem Okklusionsmaterial verdecken

Wählen Sie die Implementierung des Raumerkennungssystems aus.

Räumliche Beobachter können zur Laufzeit per Code fortgesetzt/angehalten werden.

Warnung

Wenn Sie Die Anzeigeoption auf Keine festlegen, wird die Ausführung des Beobachters NICHT verhindert. Wenn Sie alle Beobachter anhalten möchten, müssen Die Anwendungen alle Beobachter über CoreServices.SpatialAwareness.SuspendObservers()

Sichtbares Material

Gibt das Material an, das beim Visualisieren des Räumlichen Gitters verwendet werden soll.

Verdeckungsmaterial

Gibt das Material an, das verwendet werden soll, um das Räumliche Gitter zu verdecken Hologramme.

Weitere Informationen