Der Multiplayer-Stack hinter dem MMORPG Pantheon: Rise of the Fallen

EMILY RAINE / UNITY TECHNOLOGIESContributor
Jun 2, 2025|7 Min.
Ein Thronsaal in Pantheon: Rise of the Fallen von Visionary Realms
Diese Website wurde aus praktischen Gründen für Sie maschinell übersetzt. Die Richtigkeit und Zuverlässigkeit des übersetzten Inhalts kann von uns nicht gewährleistet werden. Sollten Sie Zweifel an der Richtigkeit des übersetzten Inhalts haben, schauen Sie sich bitte die offizielle englische Version der Website an.

Seinen eigenen Weg zu finden, steht im Mittelpunkt des Spiels inPantheon: Rise of the Fallen – Spieler können überall hingehen, alles erklimmen, neue Routen schmieden und ihrer Neugier folgen, um Abenteuer zu finden. Es ist nicht viel anders, als die Schöpfer, Visionary Realms, an den Aufbau dieses MMORPGs herangehen – sie machen es auf ihre eigene Art.

Die Spieler in die Fantasiewelt von Terminus zu transportieren, Pantheon: Rise of the Fallen erinnert an klassische MMOs, wo zufällige Entdeckungen beim Herumwandern in einer offenen Welt und soziale Interaktionen mit anderen Spielern im Mittelpunkt des Spielerlebnisses stehen.

Ein Multiplayer-Spiel zu erstellen, ist eine Herausforderung – aber ein hochgradig soziales Online-Spiel in diesem Maßstab ist eine epische Quest. Wir haben uns mit dem leitenden Programmierer Kyle Olsen zusammengesetzt, um zu erfahren, wie das Team Unity nutzt, um Spieler in dieser MMORPG-Fantasiewelt zu verbinden.

Was macht Pantheon: Rise of the Fallen im Vergleich zu anderen MMO-Spielen einzigartig?

Es ist definitiv der soziale Aspekt.Du musst die Welt erleben und dich natürlich durch sie bewegen.Es kann in gewisser Weise etwas mehr Grind sein, aber ich denke, es verbindet dich mehr mit deinem Charakter, mit dem Spiel und der Welt, anstatt einfach überall hin zu teleportieren und LFG-Systemen beizutreten oder einfach in einen Dungeon gesetzt zu werden. Du lernst das Land ein bisschen besser kennen, du musst navigieren und du nutzt deine Augen mehr, als nur wie ein Flipperball von Ziel zu Ziel zu hüpfen, den Questmarkern und so weiter zu folgen. Es ist mehr ein Denkspiel.

Wie verwaltest du die Synchronisation zwischen dem Spielerlebnis und spezifischen Weltinstanzen?

Wir haben unsere eigene Netzwerkbibliothek entwickelt, die für die Socket-Transportebene namens ViNL zuständig ist. Das ist das A und O für alle Zonenkommunikationen, zwischen Zonen und Spieler zu Zone. SQL-Server im Backend, da ist alles ziemlich standardmäßig. Aber die meisten Transporte werden von unserer eigenen Netzwerkbibliothek verwaltet.

Eine offene Tür in einem steinernen Raum in Pantheon: Rise of the Fallen von Visionary Realms
Pantheon: Rise of the Fallen von Visionary Realms

Wie gehst du mit dem Laden von Assets für diese riesige Welt um?

Wir haben einen Schritt, bei dem wir unsere Kontinente in diese Kacheln backen, und wir haben verschiedene Backends, die wir dafür verwenden können. Wir haben eines, das einfach Standard-Prefabs ausgibt, und wir haben eines, das Subszene ausgibt, das wir vor Unity 6 verwendet haben, und dann haben wir tatsächliche vollständige Unity-Szenen, die du additiv laden kannst, sodass du wählen kannst, wie du deine Inhalte ausgeben möchtest. Vor Unity 6 hatten wir uns von Prefabs entfernt und begonnen, die DOTS-Subszene zu laden und das zu verwenden, basierend auf BRG.

Wir haben auch eine Ausgabe, die direkt in unsere eigene benutzerdefinierte Batch-Render-Gruppe rendern kann, indem wir einfach scriptable objects verwenden und unsere eigenen Daten verwalten. Wir konnten also experimentieren und die verschiedenen Optionen testen und sehen, was die beste Client-Leistung bringt. Vor Unity 6 haben wir den gesamten Kontinent mit Subszene ausgegeben und gerendert, aber mit Unity 6 sind wir tatsächlich wieder zu Prefabs mit Instantiate Async und Addressables gewechselt, um alles zu verwalten.

Wir verwenden den Resident Drawer und GPU Occlusion Culling, was letztendlich sogar eine bessere Leistung als Subszene und unsere eigene Batch-Render-Gruppe brachte – ich nehme an, weil GPU Occlusion Culling momentan von einigen anderen Render-Pfaden einfach nicht unterstützt wird. Wir haben also ziemlich viel herumprobiert und sind bei Addressables gelandet, um den gesamten Speicher und das Asset-Laden zu verwalten, und reguläre Instantiate-Prefabs mit dem GPU Resident Drawer scheinen momentan die beste Client-seitige Leistung zu bieten.

Hast du auf Unity 6 aktualisiert, um den GPU Resident Drawer speziell zu nutzen?

Tatsächlich wollte ich es wirklich für das Occlusion Culling. Ich war mir nicht bewusst, dass nur bestimmte Render-Pfade das Occlusion Culling nutzen, also haben wir versucht, es mit der gleichen Subszene-Rendering zu verwenden, die wir vor Unity 6 verwendet haben, und festgestellt, dass nichts tatsächlich ausgeblendet wird. Also haben wir uns entschieden, wieder zur Prefab-Ausgabe zu wechseln, um zu sehen, wie das mit dem Resident Drawer aussieht, und das Occlusion Culling und die FPS sind gestiegen.

Wir hatten anfangs einige Probleme, weil Instantiate Async vor Unity 6 nicht vorhanden war, also hatten wir einige Verzögerungen, als wir unsere Kacheln instanziierten. Es wurden ziemlich viele Dinge instanziiert, aber nachdem wir ein paar Bugs behoben hatten, haben wir das auf Instantiate Async umgestellt, wodurch die Verzögerung beim Laden beseitigt wurde und die Gesamtbildrate nach dem Laden höher war, also war es einfach ein Gewinn für beide Seiten.

Gab es wirklich bemerkenswerte Produktivitätsgewinne, die mit dem Wechsel zu Unity 6 einhergingen?

Alles, worüber ich bisher gesprochen habe, war clientseitig, sodass unsere Spieler diese Gewinne erlebt haben. Für die Entwicklerseite ist die Stabilität und Leistung des Editors deutlich gestiegen. Die Stabilität des Editors in Unity 6 ist erheblich gestiegen – es ist jetzt sehr selten, dass er tatsächlich abstürzt. Allein das war, zumindest für die Programmierseite, ein großer Gewinn. Es fühlt sich insgesamt auf jeden Fall stabiler an.

Wie gehen Sie damit um, Änderungen und Updates vorzunehmen, ohne alles zu brechen?

Wir arbeiten mit Addressables, wobei wir die Labels sehr intensiv nutzen, und wir machen die Addressable-Paketierung nach Labels. Wenn wir also eine bestimmte Zone oder ein Asset in einer Zone bearbeiten, oder wie einen VFX, der mit einem Zauber oder so verbunden ist, werden nur die Bundles, die dieses Label berühren, aktualisiert.

Und dann, unser eigenes Inhaltslieferungssystem, haben wir das Spiel auf Steam und unseren eigenen Patcher verfügbar, und beide handhaben die Delta-Änderungen, wobei wir nur kleine Updates durch diese Addressable-Bundles liefern. Der Netcode erfordert, dass die gleiche Version zuerst verbunden ist, sodass die Netzwerkbibliotheksseite automatisch im Handshake-Prozess behandelt wird.

Mehrere Spieler kämpfen gegen einen Drachen in Pantheon: Rise of the Fallen von Visionary Realms
Pantheon: Rise of the Fallen von Visionary Realms

Welche Anleitung würden Sie jemandem geben, der versucht, ein MMO-Spiel oder ein anderes ehrgeiziges Multiplayer-Projekt anzugehen?

Man fängt klein an, denke ich. Es ist ein schrittweiser Prozess. Wenn Sie ein kleines Team sind, fangen Sie klein an. Es ist ein schrittweiser Prozess. Wenn Sie ein kleines Team sind, können Sie nicht zu viel auf einmal machen. Es wäre völlig überwältigend – aber das gilt für jedes größere Spiel, nicht nur für ein MMO.

Wahrscheinlich die Auswahl der Technologie – kluge Entscheidungen im Voraus treffen und dabei bleiben. Es wird viel Middleware und Backend-Technologie geben, die Sie zusammenbringen und gut zum Laufen bringen müssen, und ständig auf das neueste coole Ding umzuschwenken, wird sich nicht gut auswirken.

Was ist die aufregendste technische Errungenschaft Ihres Teams mit diesem Spiel?

Ich denke, dass es nicht viele Open-World-MMOs gibt, die in Unity umgesetzt wurden. Wir haben kein großes Team, und wir machen ein Spiel, das wirklich riesig ist, also müssen wir uns auf kleine isolierte Bereiche konzentrieren, sie so gut wie möglich entwickeln und dann weitermachen und Feedback einholen.

Das gesamte Paket zusammen ist ziemlich Neuland – wenn es ein MMO gibt, muss es sich im Geiste wie ein MMO anfühlen, mit vielen Menschen um sich herum, die ihr eigenes Ding machen. Und das haben wir geschafft – ich denke, besser als es fast jedes Unity MMO je geschafft hat. Ich denke, wir können uns dafür auf die Schulter klopfen.

Holen Sie sich weitere Einblicke von Entwicklern auf der Ressourcenseite von Unity und hier auf dem Blog. Schauen Sie sich Pantheon an: Rise of the Fallen in der frühen Zugangsphase auf Steam.