Spielzeug Kiste
Mixed Reality RTS für die HoloLens 2 mit Multiplayer und KI Einheiten.
Highlights
- Multiplayer RTS für Mixed Reality Hardware
- Synchronisation von Spielobjekten über Netzwerk
- Spatial Mapping der realen Umgebung als Spielfeld
- Koordinatensystem Synchronisation zwischen zwei Hololens Geräten
Hier stelle ich ein Masterprojekt vor, das im Studiengang Game Engineering & Visual Computing an der Hochschule Kempten entstanden ist. Das Projekt ist ein Mixed-Reality Echtzeitstrategiespiel für die Microsoft HoloLens 2. Ziel war es, eine gemeinsame Spielwelt zu schaffen, in der zwei Spieler im selben Raum miteinander interagieren können. Gebäude und Einheiten werden direkt in der realen Umgebung platziert, während KI-gesteuerte Einheiten mit der gescannten Raumgeometrie interagieren.
Projektziel
Das Ziel des Projekts war es, eine geteilte Mixed-Reality Spielerfahrung zu entwickeln. Zwei Spieler sollten im selben physischen Raum spielen können und dabei dieselben virtuellen Objekte an denselben Positionen sehen. Dafür mussten mehrere technische Herausforderungen gelöst werden:
- Synchronisation der Spielwelt zwischen zwei Geräten
- Multiplayer-Kommunikation
- Nutzung der realen Umgebung als Spielfeld
Meine Rolle im Projekt
In diesem Projekt hatte ich mehrere Verantwortlichkeiten. Ich übernahm die Rolle des Scrum Masters und koordinierte das Team sowie die Sprintplanung. Technisch lag mein Fokus auf der Netzwerkarchitektur des Spiels. Zu meinen Aufgaben gehörten:
- Implementierung der Multiplayer-Kommunikation
- Synchronisation der Spielobjekte
- Aufbau der Netzwerkstruktur
Technische Herausforderung
Eine zentrale Herausforderung war das räumliche Koordinatensystem der HoloLens.
Jede HoloLens erzeugt beim Scannen der Umgebung ihr eigenes Koordinatensystem.
Dadurch können virtuelle Objekte bei verschiedenen Spielern an unterschiedlichen Positionen erscheinen.
Ursprünglich sollte dieses Problem mit Azure Spatial Anchors gelöst werden.
Da dieser Dienst während der Entwicklung eingestellt wurde, entwickelten wir eine eigene Lösung.
Wir nutzten einen QR-Code als gemeinsamen Referenzpunkt und implementierten ein System zur Transformation zwischen den Koordinatensystemen der beiden Geräte.
Spatial Mappingping der Umgebung
Ein weiteres wichtiges Feature war die Nutzung der realen Umgebung als Spielfeld. Die HoloLens erstellt ein räumliches Mesh der Umgebung. Dieses Mesh war jedoch zu groß, um direkt über das Netzwerk übertragen zu werden. Daher entwickelten wir eine eigene Pipeline:
- Erfassen des Spatial Meshes
- Umwandlung in eine Heightmap
- Generierung eines vereinfachten Game Meshes
- Synchronisation dieses Meshes mit dem zweiten Gerät
Das Host-Gerät erstellt dabei das Level und überträgt es an den Client.
Ergebnis
Am Ende entstand ein funktionierender Proof of Concept für ein Mixed-Reality Multiplayer Echtzeitstrategiespiel. Das Projekt vermittelte wertvolle Erfahrungen in:
- Mixed Reality Entwicklung
- Multiplayer-Systemen
- Spatial Mapping
- Teamkoordination und Projektplanung