Categories: Virtual Reality

Einsteigerguide: Einführung in die Unity VR Entwicklung.

Der Virtual Reality (VR)-Markt hat in den letzten Jahren große Schritte unternommen. Die VR-Branche wird inzwischen von Giganten wie Facebook, Microsoft und Samsung unterstützt. Dies treibt den Markt noch weiter voran, indem die Preise für VR-Headsets gesenkt und die Qualität dieser Gadgets verbessert werden.

Der globale Virtual-Reality-Markt wurde 2016 auf insgesamt 2 Milliarden Dollar geschätzt und wird sich bis 2021 voraussichtlich verzehnfachen. Die Entwicklung der VR folgt diesem Trend und wächst entsprechend.

Aber warum sollte Sie das als Entwickler interessieren?

Der erste Grund ist die Herausforderung, Die Arbeit an einem neuen Projekt in einer völlig anderen Technologie als der, an die Sie gewöhnt sind, kann ihr Gehirn nach Abschluss des Projekts stimulieren und erfrischen.

Der zweite Grund ist, dass die Virtual Reality sich mit der Zeit immer mehr durchsetzen wird. Wir können davon ausgehen, dass immer mehr Entwickler von ihrer jetzigen Position zu VR-bezogenen wechseln werden. Seien Sie also nicht überrascht, wenn Webentwicklungen obsolet werden, während die VR-Entwicklung zu einem der am besten bezahlten Jobs in der Branche wird.

Früh starten bedeutet, den First-Mover-Vorteil zu nutzen, was langfristig durchaus von Vorteil sein könnte. Schließlich hat das Verlassen der Komfortzone niemanden verletzt.

Wenn Sie sich entschieden haben, ein Risiko einzugehen und die VR-Entwicklung auszuprobieren, sind die ersten Schritte die Wahl eines Geräts und einer Plattform. Beginnen wir mit den grundlegenden Unterschieden zwischen den Gerätetypen.

Erste Schritte: Ein Gerät auswählen.

Es lassen sich mit Mobile VR und Console VR zwei wichtige VR-Gerätetypen unterscheiden. Mobile VR ist ein separates Gerät, das mit einem iPhone oder Android-Gerät verbunden ist. Es ist drahtlos und benötigt keine zusätzliche Hardware, was den Zugriff erleichtert. Die Console VR ist an einen Computer oder eine Spielekonsole wie die PlayStation VR angeschlossen. Derzeit sind die Kosten für mobile VR-Headsets im Vergleich zu anderen Konsolen, die einen leistungsstarken Computer benötigen, um die VR-Spiele und -Simulationen auszuführen, relativ niedrig.

Der Hauptunterschied zwischen dem Mobile VR und dem Console VR besteht darin, wie immersiv das Erlebnis ist.

Mobile VR bietet aufgrund von Hardwareeinschränkungen kein vollständig immersives Erlebnis, da es nur das Tracking von Gyroskopen ermöglicht, so dass der Benutzer sich mit 360 Grad umsehen kann. Console VR erweitert das Erlebnis durch den Einsatz von Sensoren, die nicht nur die Position des Spielers in einer Raumskala, sondern auch seine Hand- und Fingerbewegung erfassen. Wie Sie vielleicht erraten können, liefert dies ein völlig eindringliches Erlebnis.

Wenn sich der Spieler bei der Verwendung von Mobile VR bewegen möchte, tut er dies entweder durch Verschieben des Blicks oder durch analoge Übersetzung von Bluetooth-Controllern. Diese Bewegung kann Schwindel verursachen und muss sorgfältig optimiert und getestet werden, um die Bewegung so reibungslos wie möglich zu gestalten.

Die Entwickler konkurrieren nun um Lösungen für VR-Umgebungen und um die Lösung einiger der Probleme der VR-Nutzung. Andererseits verwendet die Console VR meistens Handteleportation und analogen Steuereingang. Dennoch arbeiten Entwickler an anderen Lösungen, um ein nahtlos immersives Erlebnis zu ermöglichen.

Wie bereits erwähnt, gibt es mehrere VR-Headsets auf dem Markt. Die beliebtesten sind HTC Vive, Oculus Rift, PSVR und andere Geräte, die auf Mobile VR abzielen, wie Google Cardboard und Samsung Gear VR. Da die aktuelle Technologie in weniger als einem Jahr veraltet sein könnte, sollten Sie bei der Auswahl eines Geräts, mit dem Sie entwickeln möchten, an die kommenden Ausgaben von Headsets denken. Wir können jederzeit mit neuen Versionen von Playstation (PSVR), HTC und Oculus rechnen.

Wählen Sie eine Plattform.

Nachdem Sie ein Gerät ausgewählt haben, ist die Auswahl einer Plattform der nächste Schritt. Die Entwicklung für VR erfordert ein grundlegendes Verständnis der Game-Engines und etwas Programmierkenntnisse. Viele Entwickler erforschen die Möglichkeiten, VR-Entwickler zu werden, da der Markt jeden Tag wächst und es nicht ausreichend Personen gibt, die für diese spezifischen Plattformen entwickeln können.

Derzeit gibt es eine Reihe von Erfahrungen, die in VR vermittelt werden können, darunter Spiele aus der First-Person-Perspektive, bei denen der Spieler seine Hand zum Schießen und Fahren von Fahrzeugen einsetzt; ein kommerzieller Aspekt, bei dem Unternehmen VR-Lösungen entwickeln, um ihre Mitarbeiter für die Erfüllung bestimmer Aufgaben zu schulen; Landschaftsansichten und Architekturvisualisierungen. Die gängigsten VR-Entwicklunsplattformen sind Unity, Unreal, Android und iOS.

Unreal wird von Designern bevorzugt, da es ein viel besseres Materialsystem für Qualität, Beleuchtung, Benutzerfreundlichkeit, einfachen Import von Assets, eine größere Auswahl an Bauwerkzeugen und ein vorgefertigtes Geländesystem hat. Unrealistische Projekte können auf Windows, Mac, Linux und Mobilen Endgeräten bereitgestellt werden. Der Android-Support ist jedoch nicht so umfangreich wie in Unity. Da die meisten VR-Projekte aufgrund teurer Headsets auf Kartons getestet werden, ist der Einsatz von Unity in diesem Fall sinnvoller. Das Erstellen von Apps mit nativer Android- und iOS-Plattform ist ebenfalls möglich, aber es kann für Anfänger zu viel Arbeit sein.

VR-Entwicklung Tutorial.

Sobald Sie ein Gerät und eine Plattform für VR ausgewählt haben, ist es an der Zeit, mit einem Tutorial zu beginnen.

Für die Zwecke dieses Leitfadens werden wir uns auf Oculus Rift konzentrieren. Um für VR im Allgemeinen zu entwickeln, benötigen Sie ein sogenanntes Software Development Kit (SDK oder DevKit). Für jede Plattform gibt es mehrere SDKs im Internet, wie z.B. Oculus SDK, OpenVR SDK, VRTK, GVR unf viele mehr.

Um mit der Entwicklung der Unity 3D-Game-Engine für Oculus Rift oder Vive beginnen zu können, benötigen Sie ein grundlegendes Verständnis dafür, wie Sie die Engine verwenden können – zum Beispiel, wie Sie Spielobjekte und Verhaltensweisen zu diesen Objekten hinzufügen und wie Sie Assets importieren. Wenn Sie damit nicht vertraut sind, empfehle ich ihnen, das Unity Manual zu lesen und die Einführung tutorials.t wird ohne diese Schritte nicht möglich sein. Wir werden das von Steam entwickelte OpenVR SDK verwenden, das auf einige VR-Getriebe im Markt wie Oculus und Vive ausgerichtet ist.

Zuerst müssen Sie Steam und SteamVR herunterladen und installieren. Sobald Sie SteamVR installiert und ausgeführt haben und Oculus an ihren Computer oder ihre Entwicklungsplattform angeschlossen ist, erhalten Sie eine Popup-Bestätigung, welche ihnen mitteilt, dass SteamVR bereit ist.

Anschließend müssen Sie ein neues Unity-Projekt starten, es als 3D-Projekt markieren und ein Verzeichnis auswählen, in dem Sie es speichern möchten.

Grundlagen und Änderungen der Unity-Schnittstelle können auf der offiziellen Tutorials-Seite nachgeschlagen werden. Dort können Sie auch mehr über die Schnittstelle und die Engine erfahren.

Beim Erstellen eines Projekts müssen Sie den VR-Modus innerhalb der Engine aktivieren, um die VR-Entwicklung zu aktivieren. Dies kann über Bearbeiten > Projekteinstellung > Spieler > XR-Einstellungen erfolgen und anschließend müssen Sie den Button „Virtual Reality Supported“ anklicken.

Dann müssen Sie sicherstellen, dass sich das OpenVR über Oculus oder anderen SDKs in der Liste befindet. Sie sind nicht direkt in der Hierarchie gesetzt, was zu Konflikten führen kann.

Als Nächstes müssen Sie das SteamVR-Plugin von der Unity Asset Store Seite herunterladen und in das Unity-Projekt importieren.

Nachdem Sie das Plugin importiert und das Projekt so eingerichtet haben, dass es VR unterstützt, können Sie ihr Oculus einschalten und sehen, welche Szene Sie gerade entwickeln.

Wenn Sie ihr Projekt starten, kann die Hauptkamera in der Szene als stereoskopische VR-Kamera fungieren. Sie müssen die Kamera an der richtigen Stelle innerhalb der Szene positionieren. Dann können Sie Objekte wie Würfel und Ebenen als Referenz hinzufügen.

Jetzt, für mehr Funktionalität, müssen wir auch die Handtracking-Funktion aktivieren. Dazu können wir entweder das Prefab-Objekt in ein SteamVR-Plugin mit der Bezeichnung CameraRig bringen oder mit unserer Kamera die Szene in Szene setzen.

Blättern Sie innerhalb ihrer Projektstruktur durch die SteamVR-Plugin-Dateien und suchen Sie den Unterordner Prefabs. Dies enthält Objekte wie das CameraRig, ein vorgefertigtes Spielobjekt, dessen Controller-Tracking für beide Controller Spielobjekte aktiviert ist, an die esin SteamVR-TrackedObject-Skript angehängt ist.

Wenn Sie nun das Spiel spielen, können Sie sehen, wie ihre Oculus Touch Controller mit einem Modell des Oculus Touch in der Szene verfolgt werden.

Mit dieser einfachen Demo können Sie nun die virtuelle Welt erkunden, die Sie in VR erstellt haben. Sie haben Headtracking ind Tracking für beide Hände.

Sie können diesen Fortschritt erstellen und testen, ohne die Engine zu öffnen, was Sie ganz einfach über die obige Menüleiste (Datei > Build Setting > Build) erreichen können. Sie haben nun eine ausführbare Datei, die Sie ohne Verwendung der Engine ausführen können.

Mit dem, was Sie mit diesem Tutorial erreicht haben, können Sie eine VR-Bewegung erstellen, in der Sie beliebige VR-Inhalte wie Modelle und Animationen anzeigen können. In der Welt der Virtual Reality wird dies jedoch als „passive Erfahrung“ bezeichnet, da man nicht mit der Szene interagiert oder dazu beiträgt. Spieler dürfen nur die Inhalte anzeigen und ansehen.

VR ist hier um zu bleiben.

VR ist eine wachsende Branche, die Bestand haben wird und es sollte ein Ziel für jeden Entwickler sein, ein Early Adopter dieser Technologie zu werden. Neben der bereits erwähnten Herausforderung und der persönlichen Verbesserung ist zu erwarten, dass die Neueinstellungen in diesem Bereich in den nächsten zehn Jahren exponentiell zunehmen werden.

Anhand ihres Projekts müssen Sie entscheiden, welche VR-Mechanik Sie in die Szene implementieren wollen. Zum Beispiel in der Architekturvisualisierung bewegt sich der wichtigste Mechaniker und navigiert durch die Szene. Sie können jedoch eine weitere Funktionalität hinzufügen, mit der Sie die Modelle in der Szene ändern oder sogar die Materialien an den Modellen ändern können, was dem Benutzer ein interaktiveres Erlebnis bietet.

Es gibt so viele coole Dinge, die man mit SteamVR tun kann, wie Teleportieren und Bewegen in der Szene oder sogar Interagieren mit anderen Objekten durch das Tragen oder Werfen. Diese Themen sind etwas fortgeschrittener und wir können sie in anderen Leitfäden behandeln.

Vielen Dank für ihren Besuch.

3DMaster