Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Leitfaden führt Sie durch die Ausführung Ihrer ersten Mixed Reality-App auf der HoloLens in Unreal Engine. In der Tradition von "Hallo Welt" erstellen Sie eine einfache App, die einen Würfel auf dem Bildschirm anzeigt. Um dies nützlicher zu gestalten, erstellen Sie auch Ihre erste Geste, um den Würfel zu drehen und die Anwendung zu beenden.
Ziele
- Starten eines HoloLens-Projekts
- Aktivieren der richtigen Plug-Ins
- Erstellen einer ARSessionConfig-Datenressource
- Einrichten von Gesteneingaben
- Erstellen einer Basisebene
- Implementieren einer Zusammendrückbewegung
Erstellen eines neuen Projekts
Als Erstes benötigen Sie ein Projekt, mit dem Sie arbeiten können. Wenn Sie ein Unreal-Entwickler zum ersten Mal sind, müssen Sie unterstützende Dateien aus dem Epic-Startprogramm herunterladen.
- Starten von Unreal Engine
- Wählen Sie unter Neue Projektkategoriendie Option Spiele aus, und klicken Sie auf Weiter:
- Wählen Sie die Vorlage Leer aus , und klicken Sie auf Weiter:
- Legen Sie in den ProjekteinstellungenC++, Scalable 3D or 2D, Mobile/Tablet und No Starter Content (Kein Starterinhalt) fest, wählen Sie dann einen Speicherort aus, und klicken Sie auf Projekt erstellen.
Hinweis
Sie verwenden ein C++-Projekt anstelle eines Blueprint-Projekts, um das OpenXR-Plug-In später verwenden zu können. In dieser Schnellstartanleitung wird das Standardmäßige OpenXR-Plug-In verwendet, das im Lieferumfang von Unreal Engine enthalten ist. Es wird jedoch empfohlen, das offizielle Microsoft OpenXR-Plug-In herunterzuladen und zu verwenden. Dies erfordert, dass das Projekt ein C++-Projekt ist.
Ihr neues Projekt sollte automatisch im Unreal-Editor geöffnet werden, was bedeutet, dass Sie für den nächsten Abschnitt bereit sind.
Aktivieren erforderlicher Plug-Ins
Sie müssen zwei Plug-Ins aktivieren, bevor Sie mit dem Hinzufügen von Objekten zur Szene beginnen können.
- Öffnen Sie Plug-Ins bearbeiten>, und wählen Sie Augmented Reality aus der Liste der integrierten Optionen aus.
- Scrollen Sie nach unten zu HoloLens, und aktivieren Sie Aktiviert.
- Geben Sie openXR in das Suchfeld oben rechts ein, und aktivieren Sie die Plug-Ins OpenXR und OpenXRMsftHandInteraction :
- Neustarten des Editors
Hinweis
In diesem Tutorial wird OpenXR verwendet, aber die beiden oben installierten Plug-Ins bieten derzeit nicht den vollständigen Funktionsumfang für die HoloLens-Entwicklung. Das HandInteraction-Plug-In reicht für die "Pinch"-Geste aus, die Sie später verwenden werden, aber wenn Sie über die Grundlagen hinausgehen möchten, müssen Sie das Microsoft OpenXR-Plug-In herunterladen.
Wenn die Plug-Ins aktiviert sind, können Sie sich darauf konzentrieren, sie mit Inhalten zu füllen.
Erstellen einer Ebene
Ihre nächste Aufgabe besteht darin, ein Spielersetup mit einem Startpunkt und einem Würfel für Referenz und Skalierung zu erstellen.
- Wählen Sie Datei > Neue Ebene und dann Leere Ebene aus. Die Standardszene im Viewport sollte jetzt leer sein.
- Wählen Sie auf der Registerkarte Modi die Option Basic aus, und ziehen Sie PlayerStart in die Szene.
- Legen Sie auf der Registerkarte Details die Position auf X = 0, Y = 0 und Z = 0 fest, um den Benutzer beim Start der App in der Mitte der Szene zu platzieren.
- Ziehen Sie auf der Registerkarte "Basic " einen Cube in die Szene.
- Legen Sie die Position des Würfels auf X = 50, Y = 0 und Z = 0 fest, um den Würfel zu Beginn 50 cm vom Player entfernt zu positionieren.
- Ändern Sie die Skalierung des Cubes in X = 0,2, Y = 0,2 und Z = 0,2
Sie können den Würfel nur dann sehen, wenn Sie Ihrer Szene ein Licht hinzufügen. Dies ist Ihre letzte Aufgabe vor dem Testen der Szene.
- Wechseln Sie im Bereich Modi zur Registerkarte Lichter , und ziehen Sie ein direktionales Licht in die Szene.
- Positionieren Sie das Licht über PlayerStart , damit Sie es sehen können
- Wechseln Sie zu Datei > Aktuell speichern, nennen Sie Die Ebene Main, und wählen Sie Speichern aus.
Wenn die Szene festgelegt ist, drücken Sie auf der Symbolleiste wiedergeben , um Ihren Würfel in Aktion zu sehen! Wenn Sie ihre Arbeit abgeschlossen haben, drücken Sie ESC, um die Anwendung zu beenden.
Nachdem die Szene nun eingerichtet wurde, können Sie sie auf einige grundlegende Interaktionen in AR vorbereiten. Zunächst müssen Sie eine AR-Sitzung erstellen und können Blaupausen hinzufügen, um die Handinteraktion zu ermöglichen.
Hinzufügen eines Sitzungsobjekts
AR-Sitzungen in Unreal finden nicht von selbst statt. Um eine Sitzung zu verwenden, benötigen Sie eine ARSessionConfig-Datenressource, mit der Sie arbeiten können. Dies ist Ihre nächste Aufgabe:
- Wählen Sie im Inhaltsbrowserdie Option Neues > sonstiges Datenasset > hinzufügen aus, und stellen Sie sicher, dass Sie sich auf der Stammebene des Inhaltsordners befinden.
- Wählen Sie ARSessionConfig aus, klicken Sie auf Auswählen, und nennen Sie die Ressource ARSessionConfig:
- Doppelklicken Sie auf ARSessionConfig , um es zu öffnen, speichern Sie mit allen Standardeinstellungen, und kehren Sie zum Hauptfenster zurück:
Wenn dies abgeschlossen ist, besteht Ihr nächster Schritt darin, sicherzustellen, dass die AR-Sitzung gestartet und beendet wird, wenn die Ebene geladen und beendet wird. Glücklicherweise verfügt Unreal über eine spezielle Blaupause namens Level Blueprint , die als ebenenweites globales Ereignisdiagramm fungiert. Durch das Verbinden des ARSessionConfig-Medienobjekts im Level Blueprint wird sichergestellt, dass die AR-Sitzung direkt ausgelöst wird, wenn das Spiel beginnt.
- Wählen Sie auf der Editorsymbolleiste Blaupausen > blaupausen öffnen aus:
- Ziehen Sie den Ausführungsknoten (nach links zeigende Pfeilsymbol) aus Event BeginPlay , und lassen Sie es los.
- Suchen Sie nach dem Knoten "AR-Sitzung starten" , und drücken Sie die EINGABETASTE.
- Klicken Sie unter Sitzungskonfiguration auf die Dropdownliste Medienobjekt auswählen, und wählen Sie das Objekt ARSessionConfig aus.
- Klicken Sie mit der rechten Maustaste auf eine beliebige Stelle im EventGraph, und erstellen Sie einen neuen Knoten Für ereignisende Wiedergabe .
- Ziehen Sie den Ausführungspin, und lassen Sie ihn los, suchen Sie dann nach einem Knoten "AR-Sitzung beenden ", und drücken Sie die EINGABETASTE.
- Klicken Sie auf Kompilieren, dann auf Speichern , und kehren Sie zum Hauptfenster zurück.
Wichtig
Wenn die AR-Sitzung noch ausgeführt wird, wenn der Level endet, funktionieren bestimmte Features möglicherweise nicht mehr, wenn Sie Ihre App beim Streaming auf ein Headset neu starten.
Einrichten von Eingaben
- Wählen Sie Projekteinstellungen bearbeiten > aus, und wechseln Sie zur Engine-Eingabe>.
- Wählen Sie das + Symbol neben Aktionszuordnungen aus, und erstellen Sie die Aktionen RightPinch und LeftPinch :
- Ordnen Sie die RightPinch - und LeftPinch-Aktionen den jeweiligen OpenXR Msft-Handinteraktionsaktionen zu:
Einrichten von Gesten
Nachdem wir die Eingaben eingerichtet haben, können wir zum spannenden Teil gelangen: Hinzufügen von Gesten! Drehen Sie den Würfel auf der rechten Seite zusammen, und beenden Sie die Anwendung auf der linken Seite.
- Öffnen Sie die Ebenenblaupause, und fügen Sie inputAction RightPinch und InputAction LeftPinch hinzu.
- Verbinden Sie das rechte Zusammendrücken-Ereignis mit addActorLocalRotation , wobei Ihr Cube als Ziel und die Deltarotation auf X = 0, Y = 0 und Z = 20 festgelegt ist. Der Würfel dreht sich nun bei jedem Zusammendrücken um 20 Grad.
- Verbinden des links zusammendrückenden Ereignisses mit "Spiel beenden"
- Legen Sie in den Transformationseinstellungen des Cubes Mobility auf Movable fest, damit es dynamisch verschoben werden kann:
An diesem Punkt können Sie die Anwendung bereitstellen und testen!