Übung: Erste Schritte mit Holographic Remoting für PCs

Abgeschlossen

Willkommen bei den HoloLens 2-Tutorials. In diesem Tutorial wird beschrieben, wie Sie eine Mixed Reality-Umgebung erstellen, die Benutzeroberflächenelemente, 3D-Modellbearbeitung, Modellclipping und Eyetrackingfeatures unterstützt. Im zweiten Tutorial erfahren Sie, wie Sie eine PC-App für Holographic Remoting erstellen, mit der Sie jederzeit eine Verbindung mit HoloLens 2 herstellen und Ihre App in 3D visualisieren können.

Für dieses Tutorial sollten Sie über Grundkenntnisse im Umgang mit Unity und dem MRTK (Mixed Reality Toolkit) verfügen. Wenn Sie noch nicht mit Unity und MRTK vertraut sind, sollten Sie zunächst die Tutorials „Erste Schritte“ abschließen.

Erstellen und Vorbereiten des Unity-Projekts

In diesem Abschnitt erstellen Sie ein neues Unity-Projekt und bereiten es für die MRTK-Entwicklung vor.

Wechseln Sie zum Pfad Grundlagen zu HoloLens 2, und schließen Sie dort die Module bis zu den HoloLens 2-Modulen ab. Sie haben nun folgende Schritte ausgeführt:

  1. Erstellen des Unity-Projekts (mit einem geeigneten Namen, z. B. Holographic Remoting für PCs)
  2. Wechseln der Buildplattform
  3. Importieren der TextMeshPro Essential-Ressourcen
  4. Importieren von Mixed Reality Toolkit und Konfigurieren des Unity-Projekts
  5. Erstellen und Festlegen der Szene (mit einem geeigneten Namen, z. B. Holographic Remoting für PCs)

Importieren der Tutorialressourcen

Laden Sie MRTK.HoloLens2.Unity.Tutorials.Assets.PCHolographicRemoting.3.0.0.unitypackage herunter, und importieren Sie es.

Tipp

Wenn Sie eine Auffrischung zum Importieren eines benutzerdefinierten Unity-Pakets benötigen, lesen Sie die Anweisungen unter Importieren des Mixed Reality-Toolkits.

Nach dem Importieren der Tutorialressourcen sollte Ihr Projektfenster ähnlich wie die folgende Abbildung aussehen:

Screenshot of Project window.

Konfigurieren und Vorbereiten der Szene

In diesem Abschnitt bereiten Sie die Szene vor, indem Sie einige Tutorial-Prefabs hinzufügen.

  1. Da einige der Modelle im glTF-Format vorliegen, das von Unity nicht nativ unterstützt wird, müssen wir ein Paket installieren, mit dem sie importiert werden können.

    Um die Open-Source-Bibliothek „glTFast“ zu installieren, laden Sie diese Datei herunter, und führen Sie sie aus: https://package-installer.glitch.me/v1/installer/OpenUPM/com.atteneder.gltfast?registry=https%3A%2F%2Fpackage.openupm.com&scope=com.atteneder.

    Screenshot of importing glTFast.

    Klicken Sie auf Importieren.

    Screenshot of new scope registry imported.

    Wählen Sie Schließen aus.

  2. Navigieren Sie im Fenster „Projekt“ zum Ordner Objekte>MRTK.Tutorials.PCHolograhicRemoting>Prefabs. Wählen Sie das Prefab SceneContent aus, und ziehen Sie es an den unteren Rand des Fensters Hierarchie.

    Screenshot of Adding prefabs 2.

    Um die Szene aus dem Blickwinkel der Kamera anzuzeigen, klicken Sie im Fenster Hierarchie mit der rechten Maustaste auf das Hauptkameraobjekt, und wählen Sie Ansicht an ausgewählten Elementen ausrichten aus.

    Screenshot of Focus objects on scene.

    Tipp

    Wenn Sie die großen Symbole in Ihrer Szene als störend empfinden (z. B. die großen eingerahmten T-Symbole), können Sie diese ausblenden. Schalten Sie hierzu die Sichtbarkeit der Gizmos auf Aus.

Konfigurieren der Schaltflächen zum Bedienen der Szene

In diesem Abschnitt fügen Sie der Szene Skripts hinzu und erstellen Schaltflächenereignisse zur Veranschaulichung der Funktionen zum Wechseln und Beschneiden des Modells.

Konfigurieren der Komponente „Pressable Button“ (Skript)

  1. Erweitern Sie im Fenster „Hierarchie“ die Objekte SceneContent und ButtonParent, und wählen Sie die Schaltfläche Weiter aus. Suchen Sie im Fenster „Inspektor“ nach der Komponente Pressable Button, und wählen Sie unterhalb des Ereignisses OnClick () das Pluszeichen (+) aus.

    Screenshot of expanding the Interactable script.

  2. Lassen Sie das Objekt NextButton im Fenster „Hierarchie“ ausgewählt, und ziehen Sie das Objekt ButtonParent aus dem Fenster „Hierarchie“ in das leere Feld Kein (Objekt) des soeben hinzugefügten Ereignisses. Dadurch lauscht das Objekt „ButtonParent“ auf das Klickereignis für die Schaltfläche:

    Screenshot of Adding ButtonParent to the None Object.

  3. Wählen Sie für dasselbe Ereignis die Dropdownliste Keine Funktion und dann die Optionen ViewButtonControl>NextModel () aus. Dadurch legen Sie die Funktion „NextModel ()“ als die Aktion fest, die beim Klicken auf die Schaltfläche ausgelöst wird:

    Screenshot of selecting ViewButtonControl and NextModel.

Konfigurieren der restlichen Schaltflächen

  • Führen Sie für jede der verbleibenden Schaltflächen den oben beschriebenen Vorgang aus, um den OnClick () -Ereignissen Funktionen zuzuweisen:

    • Weisen Sie dem Objekt „PreviousButton“ die Funktion ViewButtonControl>PreviousModel () zu.
    • Wählen Sie für das Objekt „ClippingButton“ die Funktion ToggleButton>ToggleClipping () aus.

Konfigurieren der Komponenten „Schaltflächen-Steuerelement (Skript) anzeigen“ und „Umschaltfläche (Skript)“

Sie haben nun die Schaltflächen für die Veranschaulichung der Funktionen zum Wechseln und Beschneiden des Modells konfiguriert. Als Nächstes fügen Sie der Szene 3D-Modelle und dem Skript die Clippingobjekte hinzu.

Zu Demonstrationszwecken stehen sechs verschiedene 3D-Modelle zur Verfügung. Erweitern Sie das Objekt ModelParent, um diese Modelle anzuzeigen.

  1. Während das ButtonParent-Objekt weiterhin im Hierarchiefenster ausgewählt ist, suchen Sie im Inspektor-Fenster nach der Komponente View Button Control (Script) , und erweitern Sie die Variable Models.

    Geben Sie im Feld Größe die Anzahl der 3D-Modelle ein, die Sie in Ihrer Szene anzeigen möchten (in diesem Fall: 6). Dadurch werden Felder zum Hinzufügen neuer 3D-Modelle erstellt.

    Screenshot of entering the number of 3D models.

  2. Ziehen Sie alle untergeordneten Objekte von „ModelParent“ jeweils in diese Felder.

    Screenshot of dragging and drop each child object.

  3. Ziehen Sie das Objekt ClippingObjects aus dem Fenster „Hierarchie“ in das Feld Clippingobjekt der Komponente Umschaltfläche (Skript).

    Hinweis

    Bleiben Sie nur im ButtonParent-Objekt.

    Screenshot of dragging and drop clipping object.

  4. Wählen Sie im Fenster „Hierarchie“ das Prefab ClippingObjects aus, und aktivieren Sie es im Fenster „Inspektor“, um die Clippingobjekte zu aktivieren.

Konfigurieren der Clippingobjekte zur Aktivierung des Clippingfeatures

In diesem Abschnitt fügen Sie den Renderer für die untergeordneten Objekte des Objekts „MarsCuriosityRover“ einem einzelnen Clippingobjekt hinzu, um das Beschneiden des MarsCuriosityRover-Modells zu veranschaulichen.

Erweitern Sie im Fenster „Hierarchie“ das Objekt ClippingObjects. Dadurch werden die drei Clippingobjekte angezeigt, die Sie in diesem Projekt verwenden.

  1. Wählen Sie zur Konfiguration das Objekt ClippingSphere aus, und fügen Sie dann im Fenster „Inspektor“ eine Clipping Sphere-Komponente hinzu. Geben Sie anschließend im Feld Größe die Anzahl der Renderer ein, die Sie für Ihr 3D-Modell hinzufügen müssen. Fügen Sie in diesem Fall 10 für untergeordnete MarsCuriosityRover-Objekte hinzu. Dadurch werden Felder zum Hinzufügen der Renderer erstellt. Ziehen Sie nun die untergeordneten Modellobjekte des Objekts „MarsCuriosityRover“ in diese Felder.

    Screenshot of configuring Clipping Objects to enable clipping feature.

  2. Stellen Sie sicher, dass die Clippingobjekte aktiviert sind, indem Sie das ClippingObjects-Prefab im Hierarchiefenster aktivieren.