Google DayDream: Unity mit Google Daydream

Einleitung

Seit November 2016 beschäftige ich mit der Google Daydream und habe erste Demo Applikationen damit erstellt.

Ob Google Daydream eine Change hat oder ob die Hersteller lieber eine andere Lösung bevorzugen ist leider immer noch ungewiss,da Samsung mit seinem Galaxy S8 lieber auf Gear VR setzt. Das ist auch verständlich da Goolge mit Pixel und Motorola natürlich auch ein Konkurrent ist.

Trotzdem möchte ich kurz einen kleinen Einstieg beschreiben für alle Interessierten, die Googles Technologie ausprobieren und damit Entwickeln wollen.

Als Hardware habe ich das Moto Z und eine Google Daydream Brille.

Die Entwicklung des "kleinen Demos" mache ich mit Unity.

Vorraussetzungen

Die aktuelle Version ist Unity 5.6 und unter folgenden Link erreichbar: https://unity3d.com/de/get-unity/download

Den Ablauf der Installation beschreibe ich nicht in diesen Artikel, da dies einen eigenen Artikel wert wäre. Insgesamt ist der Ablauf aber auch relativ einfach.

Für meine Entwicklungen im Android Sektor habe ich zudem das Android Studio installiert: https://developer.android.com/studio/index.html

Direkt werden wir es nicht benutzen, allerdings ist es recht nützlich dir richtige SDK herunter zu laden, damit eine Entwicklung möglich ist, aber prinzipiell reicht nur der SDK-Manager (Android 7.0 SDK API 24)

Als letzter Schritt ist die Google Daydream SDK herunter zu laden:
https://developers.google.com/vr/unity/download#google-vr-sdk-for-unity

Falls noch nicht erfolgt, sollte natürlich auf dem Smartphone Daydream installiert sein:

Für die Entwicklung in Unity empfehle ich persönlich Visual Studio von Microsoft zu verwenden (Die Community Edition ist kostenload): https://www.visualstudio.com/downloads/

Installation der Android SDK

Zunächst wird noch die richtige SDK von Android benötigt, damit ein Deployment möglich ist:

Anschließend ist Android 7.0 und SDK Platform API 24 zu installieren:

Die Installation dauert dann einiges an Zeit...

Anmelden in Unity

Als näcshtes ist Unity 5 zu starten:

Als nächstes müssen Sie sich bei Unity anmelden:

Hinweis: Sollten Sie noch keinen Account haben können Sie sich einen kostenlosen Account dort einrichten lassen. Die Personal Edition ist bis zu einen Firmenumsatz von 100'000 $ kostenlos verwendbar.

Erstellen eines neuen Projekts

Im folgenden Dialog ist auszuwählen, dass ein neues Projekt erstellt werden soll:

Anschließend ist dem Projekt ein Name zu geben und auf "Create Project" zu klicken. Selbstverständlich entwickeln wir eine 3D Applikation, das ist normalerweise voreingestellt:

Konfiguration von Unity

Nach ein paar Sekunden präsentiert sich Unity wie folgt:

Als nächstes gehen wir mit dem Explorer in Downloads und doppeltklicken, auf die GoogleVR SDK, die wir bereit herunter geladen haben:

Anschließend wird das Package in das offene Unity importiert:

Als nächstes werden wir gefragt, welche Teile wir importieren wollen. Für die Demo sagen wir einfach "Alles":

Nun erfolgt der Import der Elemente (Assets):

Nach dem Import sieht man nun, dass einige neuen Elemente importiert wurden:

Vorbereiten einer Scene

Für eine sehr einfache Demo legen wir einfach eine Bodeplatte fest und einen Würfel in den Raum.

Den Boden definieren

Die Bodenplatte erstellen wir aus einer Plane, die wir unter "GameObject\3D Object\Plane" auswählen:

Anschließend sollte die Plane erscheine im Scene Fenster. Bitte beachten Sie, dass die Position ist, wie im Screenshot angegeben, ansonsten korrigieren Sie diese bitte:

Als nächstes benötigen wir eine relativ schöne Bodenstruktur:

https://www.toptal.com/designers/subtlepatterns/tileable-wood/

Laden Sie die Datei herunter und entpacken Sie diese. Die darin Enthaltene PNG Datei ist anschließend in die Assets zu ziehen:

Anschließend sollte diese wie hier dargestellt erscheinen:

Schieben Sie nun die Texture per Drag and Drop auf die Plane:

Die Farbe ist realtiv hell geworden. Klicken Sie auf das Objekt und öffnen die Shader Konfiguration:

Unter Albedo können sie die Helligkeit nach belieben einstellen und/oder auch eigene Farbakzente setzen:

Anschließend sollte man noch die Texture mehrfach wiederholen. Für das Demo sind 5 x 5 erstmal ausreichend. Es kann gerne auch ein wenig mit den Reflextionseigenschaften herum gespielt werden:

Importieren der Box

Für das erste Demo fügen wir nun noch eine kleine blauen Würfel hinzu:

Damit der Würfel nicht mitten im Raum und zur hälfte im Boden steckt, ist die Position ein wenig anzupassen:

Damit die Box auch wirklich "Blau" sein kann, muss ein Material angelegt werden. Hierzu ist ein rechter Mausklick für das Kontextmenü auf Assets zu klicken. Anschließend kann Material ausgewählt werden:

Dem Material geben wir den Namen "Blau":

Anschließend können wir über Albedo uns einen schönen Blauton aussuchen:

Diesen Farbton kann man nun wieder mit Drag and Drop der Box zuordnen:

Speichern der Scene

Unsere Konfiguration sollten wir jetzt speichern, damit diese nicht verloren gehen kann:

Als Name vergebe ich "Demo1":

Kopieren der Grundkonfiguration

Um es uns einfach zu machen, kopieren wir uns einfach von einer GoogleVR Szene die konfigurierten Elemente.

Als ersten Schritt öffnen wir eine Demo Scene von der Daydream:

Wir markieren mit der STRG Taste die folgenden Elemente:

Anschließend klicken wir mit der rechten Maustaste und wählen "Copy", um die Elemente in die Zwischenablage zu kopieren:

Anschließend öffnen wir wieder unsere eigene Scene:

Und füge die Elemente ein mit Rechten Mausklick und "Paste":

Anschließend sind die neuen Elemente eingefügt:

Zu guter letzt löschen wir die bisherige Kamera, da die Spielkamera jetzt unter Player liegt:

Die Anpassungen an die Scene speichern wir nun:

Die Playersettings vorbereiten

Damit das Deployment auf das Smartphone funktioniert, sind nun die Playersettings anzupassen:

Anschließend sind die Einstellungen vorzunehmen. Zunächst muss man als Ziel den kleinen Android Roboter oben auswähelen. Wichtig ist das man natürlich den "Virtual Reality Support" auswählt und als Ziel "Daydream" setzt. Ein Package Name muss unbedingt vergeben werden und die API Minimum auf "API level 24" gesetzt werden:

Nun kann es endlich mit dem ersten Build begonnen werden:

Falls noch nicht erfolgt, dann sollte spätestens jetzt das Smartphone an den PC angeschlossen werden:

Actung: Das Smartphone muss den Entwickler Modus aktiviert haben und USB Debugging! -> http://www.giga.de/extra/android-spezials/tipps/android-entwickleroptionen-aktivieren-einstellungen/

Anschließend kann mit dem Build begonnen werden. Wählen Sie hier "Android" und "Build And Run" aus:

Nun wird alles kompiliert und anschließend an das Smartphone übertragen. Dieser Vorgang dauert einige Minuten. Manchmal funktioniert die Smartphone übertragung nicht, dann muss es einfach noch einmal wiederholt werden.

Anschließend fordert das Smartphone an, dass es in die Daydream eingelegt werden solle:

Nun kann die Brille aufgesetzt werden und das Ergebnis betrachtet werden:

Man steht nun auf einen Holzboden und ein Blauer Würfel steht darauf:

Fazit

Mit relativ einfachen Schritten ist es heute möglich sich eine einfach Virtuelle Welt aufzubauen. Unity bietet hier viele spannende Möglichkeiten und mit der Daydream sind diese schnell und unkompliziert erfahrbar.