MonsterLens

Aus toolbox_interaktion
Wechseln zu: Navigation, Suche

Das Projekt MonsterLens entwickelten wir im Rahmen des Interaktion-Praktikums. Es zielt darauf ab, mit Handgesten erscheinende Objekte, die mittels der Hololens abgebildet werden, zu fokusieren und anschließend abzuschießen.

Idee

Die Inspiration entstand durch ein YouTube Video, in dem Microsoft das Gaming mit Mixed Reality demonstriert[1]. Unsere Umsetzung verlief ähnlich. Prinzipiell war die Idee drei neutrale Wände aufzustellen, zwischen denen sich der Protagonist im Mittelpunkt befindet und eine Hololens trägt. Durch die Hololens werden Mixed-Reality Hologramme, die als kleine Monster dargestellt werden, aus den drei Wänden, in einem Loop, per Zufall generiert. Diese bewegen sich nun auf die Hauptperson zu. Um die Kollision zu vermeiden, müssen die Monster mithilfe von Handgesten abgeschossen werden. Wenn man eins dieser Monster getroffen hat fällt es zu Boden und verschwindet. Für jedes abgeschossene Monster erhöht sich die Punktzahl. Es handelt sich also um ein Spiel mit Highscore.

Vorgehen

Die Anleitung zur gesamten Installation und Entwicklung war im Grunde schon durch viele Tutorials, auch von Microsoft selbst, vorgegeben. Daher war es nicht sonderlich schwer sich mit dem unbekannten Umfeld der 'Hololens' vertraut zu machen. Eine weitere detaillierte Anweisung findet man auch in der Toolbox, da eine vorherige Gruppe sich mit dem Thema Hololens auseinandergesetzt hat. Aus diesem Grund werden die grundsätzlichen Sachen nur oberflächlich beschrieben.

Um nun eine einfache Hololens Applikation zu kreieren, war es zunächst notwendig verschiedene Systemanforderungen zu prüfen und Software zu installieren, die auf der Entwickler-Homepage von Microsoft [2] zu finden sind. Hierbei waren die Programme Microsoft Visual Studio 2017 und Unity elementare Bestandteile die zur Entwicklung des Spiels beigetragen haben.

Um erstmal ein Gefühl für das Programm Unity zu entwickeln haben wir einfache 3D Objekte, wie beispielsweise einen Würfel, erstellt. Damit wir sehen konnten wie das 3D Objekt auf der Hololens wirken würde, haben wir im nächsten Schritt versucht den Würfel als Hologramm, auf der Hololens, erscheinen zu lassen. Hierzu musste man den Holographic Remoting Player auf der Hololens installieren und die IP-Adresse der Hololens notieren. Damit man auch ohne Hololens auf dem PC holographische Anwendungen testen und die Skripte debuggen kann benötigt man den sogenannten HoloLens Emulator. Hierfür wird aber mindestens Windows Professional benötigt. Windows Home reicht für die Installation nicht aus. Da wir aber eine HoloLens besaßen, bzw. hauptsächlich während den Praktikumszeiten gearbeitet haben, war dies nicht notwendig.

Im nächsten Teil hatten wir nun die Aufgabe interaktive Funktionen wie Gesten - oder Sprachsteuerung zu integrieren. Dazu musste man zunächst visualisieren auf welches Objekt der Benutzer blickt, damit die HoloLens weiß mit welchem Element derjenige nun interagieren möchte. Ein Cursor bzw. ein Fadenkreuz ist hierbei die beste Alternative. Damit die jeweilige Person auch mit dem Objekt interagieren kann, muss ein C#-Skript erstellt und dem entsprechenden Objekt zugewiesen werden. Somit gibt es eine Anweisung, wenn die Person eine bestimmte Handgeste ausübt und auf das Objekt „zielt“. Einige OpenFrameworks zur Gesten- und Sprachsteuerung sind auch auf der Seite des „101 Holograms Developer“ zu finden. Bei der Sprachsteuerung kann man nun zu erkennende Worte hinzufügen und diesen eine bestimmte Funktion zuteilen.

Dies spiegelt auch unsere Vorgehensweisen wieder. Das Monster-Objekt konnten wir uns aus dem HoloLens Asset-Store, welcher direkt in Unity integriert ist, herunterladen und importieren. Die Zuweisung der Funktionen auf das Objekt, sowie die Auswahl mittels Cursor und Gaze/Gesture konnte anhand der Tutorials der Microsoft Academy mittels C#-Skripten umgesetzt werden.

Monster.png

Vorraussetzungen

Die Systemanforderungen können auf der Microsoft-Website eingesehen werden: Anforderungen.jpg

Zusätzlich benötigt man für das arbeiten mit der HoloLens noch:

- Visual Studio 2017, Windows 10 Fall Creators Update SDK

- HoloLens Emulator and Holographic Templates (build 10.0.14393.1358) Your system must support Hyper-V

- Unity Version 2017.2

- Microsoft HoloLens

- Windows 10 Fall Creators Update

- Windows Store .NET Scripting Backend

- (Vuforia <to recognize and track planar images (Image Targets) and simple 3D objects, such as boxes, in real-time.[3]> In unserem Fall aber nicht notwendig)

Tipps für die Entwicklung mit der Hololens

Ein solches Projekt läuft natürlich selten reibungslos nach Plan. Deswegen hier einige Hinweise die beachtet werden sollten, bevor man ein neues HoloLensprojekt starten möchte.

- die neuesten Versionen der jeweiligen Tools herunterladen: Hierbei war das Problem, dass es immer wieder neue Updates zu den jeweiligen Programmen gibt, die allerdings auf der Developerseite nicht aktualisiert wurden.

- sich darauf einstellen, dass einige Installation auch während des Projektes stattfinden: Dies hat den größten Zeitaufwand beansprucht. Deswegen der Tipp: eine eigene FritzBox verwenden; so erspart man sich viel Zeit. Oder die Sachen zuhause installieren.

- darauf achten, dass man das richtige Betriebssystem hat; wenn nicht der Fall -> einen Laptop der TH ausleihen.

- bei der Installation von Unity unbedingt auf die Windows und Microsoft Komponenten achten


Skripte

C#-Dateien