c't 13/2016
S. 24
News
Software-Entwicklung für VR und HoloLens
Aufmacherbild

Architekten für Mixed Reality

Spieleentwicklung mit Unity für VR und HoloLens

Auf der Unite-Konferenz in Amsterdam hat Unity kommende Highlights seiner Entwicklungs-Umgebung für Spiele und Multimedia-Präsentationen vorgestellt. Entwickler sollen künftig in Gruppen arbeiten, VR-Welten direkt mit VR-Brillen auf der Nase bauen und für Microsofts HoloLens simulieren.

Mit rund 5,5 Millionen registrierten Nutzern (davon 1,5 Millionen aktive pro Monat) ist Unity die derzeit meist verwendete Entwicklungsumgebung für Spiele. Obwohl man bereits mit der kostenlosen Unity-Version vorzeigbare Titel entwerfen kann, nutzen eine halbe Million Entwickler die kostenpflichtige Pro-Version. Um den Anteil zahlender Kunden zu erhöhen, kündigte Unity auf seiner Konferenz in Amsterdam eine neue Plus-Variante an. Sie kann für 420 Dollar pro Jahr gemietet werden und sei speziell auf Start-ups zugeschnitten, die an ihrer ersten kommerziellen Veröffentlichung arbeiten. Plus-Anwender können ihr Spiel auf sämtliche von Unity unterstützten Plattformen exportieren. Zudem bekommen sie Zugriff auf die geplanten Cloud-Funktionen. Diese erlauben es, mit mehreren Personen gleichzeitig am selben Projekt zu arbeiten. „Unity Collaboration“ sorgt dafür, dass die Änderungen eines Entwicklers an einem Objekt sofort für die Übrigen sichtbar werden und nicht mit anderen Bearbeitungen kollidieren.

Die Miete für das Pro-Abo hebt Unity auf 1500 Dollar pro Jahr an. Begründet wird der Schritt unter anderem mit den erweiterten Analyse-Funktionen. So können Pro-Nutzer selbst auf die Rohdaten zugreifen und für eigene Auswertungen nutzen. Dazu lassen sich an eigens implementierten Punkten im Spiel Daten über Nutzer sammeln, um beispielsweise kritische Stolpersteine aufzudecken. Zudem erlaubt die Pro-Version größere Multiplayer-Spiele: Während in der Plus-Version nur 50 Spieler pro Titel gleichzeitig möglich sind, steigt deren Zahl in der Pro-Variante auf 500 an.

Um neue Entwickler zur Zusammenarbeit zu gewinnen, will Unity eine Job-Börse eröffnen. Auf „Unity Connect“ können sich Entwickler mit einem eigenen Steckbrief vorstellen und nach Job-Angeboten anderer Studios suchen. Aus den Werkverträgen hält sich Unity allerdings heraus, diese seien allein Sache der Job-Anbieter und -Sucher.

VR-Editor

Um die Entwicklung von Virtual-Reality-Spielen zu beschleunigen, will Unity im Herbst einen eigenen VR-Editor vorstellen. Entwickler sollen dann ihre virtuellen Welten direkt unter dem Headset entwerfen. Mit den Hand-Controllern der Oculus Rift und HTC Vive können sie Objekte bewegen und skalieren, Texturen aussuchen und Beleuchtungen einrichten (siehe oben). Die Szenen ließen sich auf Knopfdruck in VR abspielen, anhalten und editieren, ohne das VR-Headset abnehmen zu müssen.

Um die Grafikleistung zu verbessern, soll es bald möglich sein, eine Szene in Vorder- und Hintergrund aufzuteilen. Beim stereoskopischen Rendern müsste man dann nur noch den Vordergrund für beide Augen berechnen und könne den sowieso gleichen Hintergrund für das andere Auge kopieren.

Die visuellen Möglichkeiten der Unity-Engine demonstrierte der Hersteller an einer selbstlaufenden Demo namens Adam. In dieser kommen verschiedene neue Beleuchtungseffekte wie Area und Volumetric Lighting zum Einsatz. Zwar läuft die Demo auf einer GTX-980-Grafikkarte in Echtzeit, zahlreiche Effekte wurden jedoch vorberechnet, darunter etwa die Bewegungen der Kleidung. Diesen Trick könnten auch VR-Entwickler nutzen, um Rechenzeit zu sparen. Weit entfernte Objekte ließen sich zudem als 360°-Video mit passender Kollisionserkennung in einer Skybox einbinden.

Über die neuen Grafikfunktionen werden sich nicht zuletzt PR-Firmen freuen. Auf der Unite-Konferenz zeigten Firmen wie Effekt-Etage und Zerolight VR-Konfiguratoren für Audi, BMW und Pagani, in denen Kunden viele Details der hochaufgelösten Luxus-Autos – etwa die gewünschte Lederfarbe im Innenraum – unter einem VR-Headset aussuchen konnten.

HoloLens in Unity

Mittels eines 3D-Scans erkennt die HoloLens reale Oberflächen in der Umgebung und platziert auf ihnen virtuelle Objekte.

Neben VR unterstützt Unity auch Microsofts HoloLens. Die Anbindung funktioniert über das HoloLens SDK und ein HoloToolkit für Unity, das Microsoft kostenlos zum Download bereitstellt (siehe c’t-Link). Obwohl die Mixed-Reality-Brille derzeit nur in Nordamerika für 3000 US-Dollar erhältlich ist, war das Interesse auf der Konferenz groß. Die HoloLens läuft ähnlich wie Samsungs Gear VR kabelfrei ohne zusätzlichen Computer. Mit ihrer Quadcore-CPU (Intel Atom x5-Z8100, 1,05 GHz), 2 GByte RAM und 64 GByte Flash-Speicher erreicht sie die Rechenleistung eines High-End-Smartphones unter Windows 10. Der integrierte Akku (16,5 Wh) hält rund zwei Stunden durch.

Die HoloLens mixt auf ihren transparenten Displays die reale Umgebung mit virtuellen Objekten. Die Auflösung beträgt ein Megapixel pro Auge. Im Unterschied zu VR-Brillen decken die Displays allerdings nicht das volle Blickfeld ab, sondern in etwa die Größe eines 15-Zoll-Laptop-Bildschirms, den man sich auf Armlänge vor das Gesicht hält. Hierauf kann man nur kleine Objekte in voller Größe sehen. Wenn die HoloLens eine große Figur rendert, etwa einen lebensgroßen Dinosaurier, sieht man – anders als Microsofts Werbefotos es suggerieren – immer nur einen kleinen Ausschnitt, was nicht besonders immersiv ist.

Statt Anwender mit Kopfhörern abzuschirmen, gibt die HoloLens ihren Sound über zwei kleine rote Lautsprecher über den Ohren aus. Die klingen mangels Bass zwar wie ein Telefon, genügen aber für akustische Feedbacks und lassen einen sogar die Richtung einer virtuellen Schallquelle orten.

Der Clou der HoloLens ist jedoch, dass sie die Umgebung in 3D scannt. Während andere AR-Systeme etwa von Vuforia noch spezielle Markierungen benötigen, erkennt die HoloLens Oberflächen und Objektkanten in der Umgebung automatisch. Dadurch lassen sich nicht nur virtuelle Objekte auf dem realen Boden oder einem Tisch platzieren. Man kann sogar virtuelle Bälle eine reale Treppe hinunterstoßen, sodass sie von den Stufen physikalisch korrekt abprallen. Die farbigen Projektionen bleiben stabil im Raum, selbst wenn man um sie herum geht. Und mit der integrierten Kamera der HoloLens lassen sich dann sogar Fotos und Videos von der Mixed Reality aufnehmen.

Die Eingaben durch den Nutzer sind indes beschränkt. Er sieht durch die HoloLens ein kleines Zielkreuz, das mit seiner Blickrichtung über die virtuellen Objekte wandert. Mit einer Fingergeste (Pinch) kann er eine vom Programm vorgegebene Funktion auslösen, was in einem kurzen Test allerdings nicht auf Anhieb klappte. Alternativ kann man auf einer kleinen mitgelieferten Fernbedienung (Clicker) einen Knopf drücken oder scrollen. Besser funktionerte die Sprachsteuerung über das HoloLens-Mikrofon. Unity-Entwickler können über das Spracherkennungspaket von Microsoft nahezu beliebige Kommandos in englischer Sprache definieren und in ihre Software einbauen.

Virtueller Fluglotse

Das in Unity entwickelte HoloFlight projiziert Flugzeuge anhand von Echtzeitdaten auf die HoloLens. Was in der Unity-Engine schwarz aussieht, ist auf den Displays transparent und blendet die reale Umgebung ein. Bild: IdentityMine

Damit Projektionen auf der HoloLens mit einer Framerate von 60 fps laufen, müssen Entwickler vorsichtig mit den Ressourcen umgehen, erklärte Rene Schulte von IdentityMine. Szenen mit bis zu 50 000 Polygonen seien jedoch unproblematisch. Dazu zeigte er eine kleine Flugverkehrsimulation namens HoloFlight. Diese arbeitet in Echtzeit reale Flugdaten auf und projiziert die Flieger mit ihren Flugbahnen auf einer kleinen Tischlandschaft. Besonderes Augenmerk richtete Schulte dabei auf die Bedienoberfläche und teilte die Vielzahl an Informationen auf verschiedene kleine Fenster auf, die auch an reale Wände gepinnt werden können. Da ist es zur Navigation à la Minority Report nicht mehr weit. (hag@ct.de)

 

Unity übernahm die Reisekosten des Autors zur Konferenz.