
Zenith erstellen: Die letzte Stadt
Zenith: Die letzte Stadt
Wie schafft es ein kleines, entferntes Team, ein MMO in VR zu erstellen? Mit einer flexiblen Entwicklungsplattform, multithreaded Programmierung, robusten DevOps-Tools und der Unterstützung einer aktiven Community hat Ramen VR ein gut optimiertes, plattformübergreifendes Spiel gestartet, das die Spieler begeistert und eine neue Ära des Spielens einläutet.
Ein erfolgreiches, leistungsstarkes VR-MMO für alle wichtigen VR-Plattformen erstellen
PlayStation®VR, PlayStation®VR2, Quest, Quest 2, Rift, SteamVR
22
Fern

Eine ehrgeizige Wette eingehen
Andy Tsen und Lauren Frazier trafen sich 2016 bei Oculus Launch Pad, wo sie eine gemeinsame Leidenschaft für MMOs und isekai Anime entdeckten. Das Paar sah eine Gelegenheit, diese Genres zu kombinieren und ein neues, immersives MMO-Erlebnis in VR zu schaffen. 2019 kündigten sie ihre Jobs, gründeten Ramen VR und begannen mit der Arbeit an Zenith: Die letzte Stadt.

Die Ergebnisse
- Ein VR-MMO mit einem Team von nur 15 Personen gestartet
- Erzielte durchschlagenden Erfolg mit dem Platz 1 auf Quest und Steam zum Start
- Bis heute über 45 Millionen Dollar an Investorenfinanzierung gesammelt
- Projekt-Datenverlust mit Unity Version Control beseitigt

Buy-in für die Erfassung des Ganzen
Die Erstellung von Zenith erforderte einen Sprung ins Ungewisse: Tsen und Frazier finanzierten die frühe Entwicklung aus eigener Tasche. „Unser Studio-Name stammt von allem, was wir uns damals leisten konnten zu essen“, scherzt Tsen.
Ein Angel-Investor änderte alles. Bald war Ramen VR im Y Combinator Accelerator-Programm eingeschrieben und sammelte in 45 Tagen 280.000 Dollar mit einer rekordverdächtigen Kickstarter-Kampagne. Die Unterstützer waren beeindruckt von dem Umfang des Projekts und dem Willen des Studios, es zu verwirklichen.
„Niemand, der jemals ein MMO gebaut hat, würde versuchen, dies zu tun“, sagt Tsen. „Startup, VR, MMO, plattformübergreifend – es ist Gamedev im Schwierigkeitsgrad schwer!“

Suche nach den richtigen Tools
Tsen und Frazier hatten zuvor an einem preisgekrönten Unity-Projekt – einem VR MOBA, Conjure Strike – zusammengearbeitet und waren zuversichtlich, dass sie etwas noch Ambitionierteres angehen könnten.
„Wir wussten, wie schwer es sein würde, ein Spiel in dieser Größenordnung in VR zu bauen, aber wir dachten auch, dass es eine Lücke zwischen dem gab, wie schwer die Leute dachten es war und wie schwer es tatsächlich war“, sagt Tsen. „Diese Lücke waren Plattformen und Tools wie Unity, die die Erstellung von Inhalten in viel größerem Maßstab mit einem viel kleineren Team ermöglichen.“
Ramen VR startete Zenith mit einem Team von 15, hat jetzt aber 22 Kernteammitglieder. Bei der Auswahl neuer Entwicklungstools stellen sie sicher, dass sie anpassbar, leicht integrierbar, gut mit bestehenden Systemen kompatibel und für technische sowie nicht-technische Mitwirkende zugänglich sind.

Erstellen einer Grundlage mit DOTS
Als systembasierte Spiele erfordern MMOs starke, skalierbare technische Grundlagen. Früh in der Entwicklung organisierte Ramen VR die Systeme von Zenith mit MonoBehaviors, aber die Logik Hunderte von Malen über Hunderte identischer GameObjects auszuführen, war ineffizient. Sie nutzten Unitys Entity Component System (ECS)-Framework, einen Schlüsselbereich des Data-Oriented Technology Stack (DOTS), um die Nachteile der objektorientierten Programmierung zu vermeiden.
„Ein MMO ist eine großartige Anwendung für ECS“, merkt Frazier an. „Zenith erfordert, dass Tausende von Entities gleichzeitig koexistieren, und ECS ermöglicht es uns, in großem Maßstab zu arbeiten.“

Die richtigen Arbeitsabläufe wählen
Im neuen Workflow hat jedes „Schauspieler“-GameObject (Spieler, Mobs, Sammlerstücke) eine entsprechende ECS-Entity. Das ECS läuft durch GameObjects und überprüft relevante Tags, die Logik auslösen, wann immer sie gefunden werden.
„Es war schön, den Workflow auswählen zu können, der zur Situation passt. Wir hätten reine Objekte oder reine Entities verwenden können – aber ich denke nicht, dass man sich entscheiden sollte“, sagt Frazier.

Vermeiden von Gebührenbeschränkungen
ECS half auch bei infrastrukturellen Herausforderungen. Über 120.000 Spieler meldeten sich an, um Zenith in der Alpha-Phase zu testen, und Ramen VR unterschätzte die Belastung, die dies für ihre Server mit sich bringen würde. Als viele Spieler sich abmeldeten, überschritten die Server die Speicherkapazitäten und die Spieler verloren ihre Spieldaten. Um dies zu lösen, erstellte das Team ein ECS-Tag, um den Fortschritt von Quests zu verfolgen. „Unser ECS-System überprüft die Tags, und wenn es eines aufnimmt, wird es in eine Warteschlange gestellt, alle X Sekunden aus der Warteschlange entfernt und in externen Speicher geschrieben“, erklärt Frazier.

Optimierung der Grafiken für alle Geräte
Zenith ist ein multiplattformfähiges MMO, daher war es entscheidend, die Grafiken für alle wichtigen VR-Geräte zu optimieren, um sicherzustellen, dass das Spiel so viele Spieler wie möglich erreicht. Das Erstellen von VR-Spielen bedeutet, doppelt so viele GameObjects mit höherer Auflösung und höheren Bildraten zu zeichnen, um eine gute Immersion zu gewährleisten und VR-Krankheit zu reduzieren. Also entschieden sie sich für die Universal Render Pipeline (URP).
„Die Universal Render Pipeline war die beste Wahl für uns, da wir auf PC, Android (Oculus Quest) und PSVR ausgeliefert haben“, sagt Frazier. „URP ermöglichte es uns, für alle VR-Plattformen zu entwickeln.“

Reduzieren der Rendering-Kosten
Mit URP’s Single Pass Instanced Rendering konnte Ramen VR visuelle Darstellungen für beide Augen an einem Ort rendern, was CPU- und GPU-Zeit spart und die Leistung verbessert. Anpassungsfähigkeit war ebenfalls ein Pluspunkt. „Wir haben die Standard-Shader (Simple Lit, Unlit) bearbeitet, um auf Änderungen aus unserem Tag-Nacht-Zyklus zu reagieren – Dinge bei Sonnenuntergang orange oder rot zu machen, einen blauen Farbton nachts hinzuzufügen und so weiter“, sagt Frazier.
Das Studio ist mit dem, was sie mit URP erreicht haben, zufrieden, hofft jedoch, die visuellen Darstellungen von Zenith in einer zukünftigen Veröffentlichung weiter zu verbessern. „Ein Großteil unserer ursprünglichen Qualität wurde aufgrund von Hardwarebeschränkungen – hauptsächlich Speicher, aber auch GPU-Zeit – geopfert“, sagt Frazier. „Jetzt versuchen wir, Dinge wie Textur-Arrays zu nutzen, um einen Teil dieser verlorenen Treue zurückzugewinnen.“

Projektdateien verwalten
Um sicherzustellen, dass sie kontinuierlich und pünktlich neue Inhalte liefern können, verwendet Ramen VR Unity Version Control (UVCS), um das Projekt zu verwalten. „Es hat uns ermöglicht, unsere Produktivität zu steigern, unsere Arbeitsabläufe zu verbessern und viel einfacher zusammenzuarbeiten“, sagt Programmierer Jordan J.
UVCS hat duale Arbeitsabläufe für Künstler und Ingenieure, und Teamkollegen können wählen, ob sie zentralisiert oder verteilt arbeiten, während sie dasselbe Repository verwenden. „Der zentralisierte Fluss bedeutet weniger Unfälle und Abweichungen zwischen lokal und remote, als man es bei etwas wie Git sieht“, sagt Frazier. Ramen VR hat seit der Einführung von UVCS nie Projektdaten verloren.

Spieler zusammenbringen
Die intelligente ECS-Implementierung und visuelle Optimierung mit URP bedeutet, dass Spieler gemeinsam Abenteuer erleben und die massive Welt von Zenith erkunden können, ohne Verzögerungen zu erleben oder Fortschritte zu verlieren. Und ein skalierbarer, anpassbarer Tech-Stack bedeutet, dass Ramen VR bereit ist, in den kommenden Jahren weiterhin neue Inhalte zu Zenith hinzuzufügen.

Schließen Sie sich Entwicklern auf der ganzen Welt an, die Unity verwenden, um erfolgreiche VR-Spiele zu entwickeln.