HoloLens Hackathon

HoloLens Hackathon

Virtual-, Augmented- und Mixed Reality sind Begriffe, die man evtl. schon einmal gehört oder indirekt damit zu tun gehabt hat. Doch was steckt dahinter? Im Rahmen eines zweitägigen Hackathons wollten wir uns speziell dem Thema ‘Mixed Reality’ widmen und sind dabei auf teils überraschende Ergebnisse gestoßen.

Doch was ist überhaupt der Unterschied zwischen den einzelnen “Reality-Formen”?

  • Virtual Reality beschreibt eine vom regulären Raum getrennte Welt, die nicht durch unsere Umwelt beeinflusst wird.
  • Augmented Reality ist dasselbe wie die Virtual Reality mit dem Unterschied, dass darin angezeigte Informationen aus unserer Umwelt stammen können
  • Bei Mixed Reality verschwimmt die Grenze zwischen unserer Umwelt und der virtuellen Welt. Für unseren Hackathon kam eine Microsoft HoloLens Developer Edition zum Einsatz.

Damit am Ende ein vorzeigbares Ergebnis garantiert war, wurden von Anfang an einige Milestones definiert:

  • Stufe 1: Darstellung eines 3D-Modells von Berlin auf einem Tisch inkl. Zusatzinformationen in einer App, die dann an die Wand projiziert werden können.
  • Stufe 2: Darstellung eines einzelnen Gebäudes anstelle des Stadtplans aus dem 3D-Modell und eine optisch aufbereitete App an der Wand.
  • Stufe 3: Interaktionsmöglichkeiten mit dem Gebäude, z.B. um Maßangaben anzuzeigen. Dabei können die zusätzlichen Informationen entweder direkt im Modell oder aber in der App an der Wand angezeigt werden.

Die HoloLens

Zum Einstieg widmeten wir uns der HoloLens. Für Personen, die noch nie etwas mit dieser zu tun hatten, ist die erstmalige Verwendung etwas ungewohnt, dennoch fantastisch einfach.

Nachdem man die HoloLens das erste Mal startet, wird durch die Kalibrierung und Konfiguration des Geräts geführt. Abwechselnd muss man hierzu erst das eine, dann das andere Auge schließen und jeweils sechs unterschiedliche Punkte, die gefühlt mitten im Raum auftauchen, mit seinem Finger überdecken. Dies dient u.a. dazu, den Augenabstand des Trägers zu messen, was direkte Auswirkung auf die Darstellung von Hologrammen im Raum hat.

Anschließend wird dem Nutzer die Gestensteuerung erklärt. Insgesamt gibt es hiervon nur die drei folgenden:

Ready. Wird die Geste im Erkennungsbereich der HoloLens ausgeführt, ändert sich der Cursor zu einem Kreis

Bloom, zum Öffnen und Schließen des Windows Startmenüs und Air Tap, Auswahl des momentan gesehenen Objekts / Menü Eintrags.

Nebst der Gestensteuerung steht jederzeit auch eine Sprachsteuerung zur Verfügung. Entweder über Microsoft Cortana oder je nachdem, in welchem Kontext man sich gerade befindet, auch einzelne Befehle, wie Remove, Adjust etc.

Sobald man die Gestensteuerung beherrscht, werden Standardinformationen des Nutzers abgefragt: Zunächst ein Microsoft Account mit dem man sich einloggen möchte, außerdem mit welchem WLAN man sich verbinden will.

Ein Hinweis an dieser Stelle: Verwendet man zum aktuellen Zeitpunkt eine HoloLens Developer Edition, kann sich nur eine Person an dieser anmelden. Um den Benutzer anschließend zu wechseln, muss die HoloLens auf Werkseinstellungen zurückgesetzt werden. Es bietet sich somit gleich von vornherein an, einen allgemeinen Account zu erstellen und zu verwenden.

Hat man die Einführung und Konfiguration abgeschlossen, kann man sogleich damit beginnen, die HoloLens zu verwenden.

Out of the Box Apps

Zum einfacheren Einstieg hat Microsoft für die Verwendung der HoloLens bereits einige Anwendungen installiert, unter anderem auch den hauseigenen Browser “Edge”.

Startet man diesen, erscheint zunächst ein frei schwebendes Fenster im Blickfeld des HoloLens-Trägers. Bewegt man seinen Kopf, bewegt sich das Fenster mit. Je nachdem auf was man dabei blickt, versucht die HoloLens die Fläche zu identifizieren und bewegt das Fenster an selbiger entlang. Ist man mit der Position des Fensters zufrieden, kann man nun mit einem “Klick” das Fenster am gewünschten Ort fixieren. Alle Parameter wie Größe, Position und Ausrichtung lassen sich im Nachgang jederzeit wieder ändern.

Spätestens nach dem Start und der Verwendung der HoloLens Apps fällt auf, dass diverse Aspekte als ganz selbstverständlich und intuitiv wahrgenommen werden:

  • Zu keiner Zeit konnte der Kontrast oder die Helligkeit der Apps bemängelt werden.
  • Auch blieb eine App stets an dem Ort, an dem man sie hinterlegt hat.
  • Es gab keine spürbare Verzögerung oder sonstige Bildfehler.
  • Der Rundumblick war durchgehend uneingeschränkt möglich
  • Die Tönung des HoloLens-Glases wirkt von außen deutlich stärker, schränkt die Sicht des Nutzers aber nicht weiter ein und verleiht der Umgebung einen leicht grünlichen Filter, ähnlich einer Sonnenbrille.

Hello World – HoloLens Variante

Um den Einstieg in die HoloLens App-Entwicklung möglichst einfach zu gestalten, stellt Microsoft in seiner Academy einige Kurse zur Verfügung. Mithilfe dieser konnte die erste App entwickelt werden, die im ersten Schritt nichts anderes tun sollte, als einen Würfel im Raum darzustellen.

Generell wird für den Einstieg folgende Software benötigt, unabhängig davon, ob man nun nur die Tutorials in der Academy durcharbeiten oder eigene Apps schreiben möchte:

Sollen in der zu entwickelnden App 3D-Objekte angezeigt werden, kann Unity verwendet werden, eine Software mit der u.a. auch Spiele entwickelt werden. Erfahrung mit Unity ist dahingehend sehr wertvoll. Alternativ steht DirectX zur Verfügung, wodurch man direkteren Zugriff auf die Hardware hat. Dies wird jedoch über wesentlich mehr Aufwand in der Entwicklung erkauft.

Das Deployment der App gestaltet sich so schnell wie einfach. Das in Visual Studio geöffnete Projekt, welches ebenfalls von Unity erstellt wird, kann von dort direkt auf die zuvor registrierte HoloLens deployed werden

Sharxx 4 Hololens

Nachdem nun sichergestellt wurde, dass sowohl die Entwicklungsumgebungen korrekt installiert waren als auch das Deployment auf die HoloLens funktionierte, kann mit der eigentlichen Entwicklung begonnen werden.

Wie zu Beginn erwähnt, soll unsere App u.a. ein 3D-Modell von Berlin auf einem Tisch anzeigen sowie ein zusätzliches frei positionierbares Fenster mit Detailinformationen. Sehr früh wurde jedoch klar, dass die gleichzeitige Anzeige einer 3D App und eines zusätzlichen Fensters nicht von der HoloLens vorgesehen ist. Zumindest dann nicht, wenn die 3D App aus Unity stammt. Besagte Apps laufen in einem sogenannten “exklusiven” Modus, u.a. um der App so viel Rechenkapazität wie möglich zur Verfügung zu stellen. Gleichzeitig heißt das, dass andere Hologramme ausgeblendet werden. Ein zusätzliches Fenster mit Detailinformationen anzuzeigen wurde dementsprechend zunächst verworfen.

In folgenden Iterationsschritten ging es an die Implementierung:

  • Tag Nr. 1
    • Berlin 3D-Modell anzeigen, inkl. Bodenplatte
    • Einbindung eines eigenen Cursors
    • (Re-)Positionierung des 3D-Modells durch “Klick” möglich:
      • Da die Bodenplatte sehr dünn war, versank das Hologramm im Boden.
      • Außerdem konnte dadurch kein “Klick” zum Positionieren durchgeführt werden.
    • Dickere Bodenplatte und die Farbe der Bodenplatte wechselt, wenn man diese anblickt.
  • Tag Nr. 2
    • Bodentextur ausgetauscht
    • Beim Start der App wird die Bodenplatte ohne Gebäude dargestellt und kann direkt bewegt und positioniert werden.
    • Aus Performance- und Usabilitygründen werden alle Gebäude ausgeblendet, solange die Bodenplatte bewegt wird.
    • Anklicken der Gebäude vergrößert/verkleinert das entsprechende Gebäude.

Das Ergebnis kann man sich im folgenden Video ansehen:

Lessons Learned

Auf Basis der bisher erstellten App ergeben sich somit folgende Erkenntnisse:

  • Das Bedienkonzept der HoloLens ist sehr simpel. Kurz gesagt gibt es nur einen “Klick”. Das hat direkte Auswirkungen auf Aktionen, die man mit 3D-Objekten durchführen kann. Statt mehrere Aktionen innerhalb desselben Objekts zur Verfügung zu stellen, bietet es sich an, eine Menüleiste anzuzeigen, in der man zuvor die gewünschte Aktion auswählen kann.
  • Die Performance der HoloLens ist in der Regel sehr gut. Das von uns verwendete 3D-Modell war jedoch Aufgrund der Konvertierung aus einem anderen Format zu komplex, sodass ein spürbares Ruckeln sichtbar wurde. Das Thema Performance sollte daher frühzeitig bedacht und behandelt werden.
  • Während man sich mit der HoloLens Windows App​ einen LiveStream ansieht oder aufnimmt, reduziert sich die Qualität als auch Bildwiederholungsfrequenz für den Träger der HoloLens spürbar.

 

 

By | 2017-09-06T16:40:23+00:00 September 6th, 2017|Allgemein, Virtualisierung, Web application|0 Comments

About the Author:

IT Architect

Leave a Reply

%d bloggers like this: