Que recherchez-vous ?
Hero background image
CASE STUDY

Créer le zénith : La dernière ville

Découvrez comment Ramen VR a vaincu le "gamedev en mode difficile" et a réuni les joueurs dans le premier MMO VR multiplateforme au monde.
Découvrez les coulisses de Zenith : La dernière ville dans cette vidéo à la demande.
Regarder le flux du créateur

Zénith : La dernière ville

How does a small, remote team create an MMO in VR? With a flexible development platform, multithreaded programming, robust DevOps tools, and the support of an active community, Ramen VR launched a well-optimized, multiplatform game that’s delighting players and ushering in a new era of gaming.

Les enjeux

Creating a successful, high-performance VR MMO for all major VR platforms

Plateformes

PlayStation®VR, PlayStation®VR2, Quest, Quest 2, Rift, SteamVR

Membres de l'équipe

22

Lieu

Remote

Pleins feux sur l'Europe : RV Ramen

Un pari ambitieux

Andy Tsen et Lauren Frazier se sont rencontrés à l'Oculus Launch Pad en 2016, où ils ont tissé des liens autour d'un intérêt commun pour les MMO et les anime isekai. Le duo a vu l'opportunité de combiner ces genres et de créer une nouvelle expérience MMO immersive dans la RV. En 2019, ils ont quitté leur emploi, fondé Ramen VR et commencé à travailler sur Zenith : La dernière ville.

Illustration promotionnelle du coffre à trésor de Zenith

Les résultats

  • Lancement d'un MMO VR avec une équipe de seulement 15 personnes
  • Une réussite éclatante avec la première place sur Quest et Steam au lancement
  • Levée de fonds de plus de 45 millions de dollars auprès d'investisseurs à ce jour
  • Élimination de la perte de données du projet avec Unity Version Control
"Travailler avec Zenith : The Last City, il y a beaucoup de changements et de gros fichiers. Unity Version Control permet d'apporter et de retirer ces modifications très facilement".
JESSICA SWEENEY / RAMEN VREnvironment Artist
"Lorsque Zenith est sorti, c'était le jeu numéro un sur toutes les plateformes sur lesquelles il a été lancé. Je pense que c'est parce que nous avions une idée amusante, une équipe formidable et des outils puissants pour nous aider à la réaliser".
LAUREN FRAZIER / RAMEN VRCTO
Obtenir l'adhésion à une vision audacieuse
Obtenir l'adhésion à une vision audacieuse

La réalisation de Zenith a nécessité un acte de foi : Tsen et Frazier ont financé les premiers développements de leur poche. "Le nom de notre studio vient de tout ce que nous pouvions nous permettre de manger à l'époque", plaisante Tsen.

Un investisseur providentiel a tout changé. Rapidement, Ramen VR s'est inscrit au programme d'accélérateur Y Combinator et a levé 280 000 dollars en 45 jours grâce à une campagne Kickstarter record. Les bailleurs de fonds ont été impressionnés par l'ampleur du projet et la détermination du studio à le mener à bien.

"Personne n'ayant jamais construit un MMO auparavant n'essaierait de le faire", déclare Tsen. "Startup, VR, MMO, cross-platform - c'est le gamedev en mode hard !"

Trouver les bons outils
Trouver les bons outils

Tsen et Frazier avaient déjà collaboré sur un projet Unity primé - un MOBA VR, Conjure Strike - et étaient convaincus de pouvoir s'attaquer à quelque chose d'encore plus ambitieux.

"Nous savions à quel point il serait difficile de créer un jeu de cette envergure dans la RV, mais nous pensions également qu'il y avait un fossé entre la difficulté que les gens pensaient et celle qu'ils avaient réellement", explique Tsen. "Cette lacune a été comblée par des plateformes et des outils comme Unity, qui permettent de créer du contenu à une échelle beaucoup plus grande avec une équipe beaucoup plus petite."

Ramen VR a lancé Zenith avec une équipe de 15 personnes, mais l'équipe principale compte désormais 22 membres. Lorsqu'ils choisissent de nouveaux outils de développement, ils s'assurent qu'ils sont personnalisables, facilement intégrables, qu'ils fonctionnent bien avec les systèmes existants et qu'ils sont accessibles aux contributeurs techniques et non techniques.

Construction d'une base grâce à la pile technologique orientée vers les données (DOTS)
Construction d'une base grâce à la pile technologique orientée vers les données (DOTS)

En tant que jeux basés sur des systèmes, les MMO nécessitent des bases techniques solides et évolutives. Au début du développement, Ramen VR a organisé les systèmes de Zenith à l'aide de MonoBehaviors, mais l'exécution de la logique des centaines de fois sur des centaines de GameObjects identiques était inefficace. Ils se sont appuyés sur le système de composants d'entités (ECS) de Unity, un pilier essentiel de la pile technologique orientée données (DOTS), pour éviter les inconvénients de la programmation orientée objet.

"Un MMO est une excellente application pour l'ECS", note Frazier. "Zenith nécessite la coexistence de milliers d'entités en même temps, et ECS nous permet de fonctionner à l'échelle.

Choisir le bon flux de production
Choisir le bon flux de production

Dans le nouveau workflow, chaque GameObject "acteur" (joueurs, mobs, objets à collectionner) a une Entité ECS correspondante. L'ECS parcourt les objets de jeu et vérifie la présence de balises pertinentes, déclenchant une logique dès qu'elles sont trouvées.

"Il était agréable de pouvoir choisir le flux de travail approprié à la situation. Nous aurions pu faire des objets purs ou des entités pures, mais je ne pense pas qu'il faille choisir", déclare M. Frazier.

Prévention des limites de taux
Prévention des limites de taux

L'ECS a également contribué à relever les défis infrastructurels. Plus de 120 000 joueurs se sont inscrits au test alpha de Zenith, et Ramen VR a sous-estimé la charge que cela représenterait pour ses serveurs. Lorsqu'un grand nombre de joueurs se déconnectaient, les serveurs dépassaient les limites de stockage et les joueurs perdaient leurs données de sauvegarde. Pour résoudre ce problème, l'équipe a créé une étiquette ECS pour suivre la progression de la quête. "Notre système ECS vérifie la présence de balises et, lorsqu'il en détecte une, il la place dans une file d'attente, l'enlève toutes les X secondes et l'écrit sur un support de stockage externe", explique M. Frazier.

Optimiser les visuels sur tous les appareils
Optimiser les visuels sur tous les appareils

Zenith est un MMO multiplateforme. Il était donc essentiel d'optimiser les graphismes pour tous les principaux dispositifs VR afin de s'assurer que le jeu atteigne le plus grand nombre de joueurs possible. La création de jeux VR implique de dessiner deux fois plus de GameObjects, à une résolution plus élevée, à des fréquences d'images plus élevées, afin de garantir une bonne immersion et de réduire le mal des transports. Ils ont donc opté pour le Universal Render Pipeline (URP).

"L'Universal Render Pipeline était le meilleur choix pour nous, car nous expédiions sur PC, Android (Oculus Quest) et PSVR", explique M. Frazier. "URP nous a permis de construire pour toutes les plateformes VR.

Réduction des coûts de rendu
Réduction des coûts de rendu

Avec l'URP Single Pass Instanced rendering, Ramen VR peut rendre les images pour les deux yeux en un seul endroit, ce qui permet d'économiser du temps de CPU et de GPU et d'améliorer les performances. La possibilité de personnalisation était également un atout. "Nous avons modifié les shaders standard (Simple Lit, Unlit) pour répondre aux changements de notre cycle jour-nuit - en rendant les choses plus orange ou rouges au coucher du soleil, en ajoutant une teinte bleue la nuit, et ainsi de suite", explique Frazier.

Le studio est satisfait de ce qu'il a réalisé avec URP, mais espère pousser les visuels de Zenith plus loin dans une prochaine version. "Une grande partie de notre qualité initiale a été sacrifiée en raison des limitations matérielles - principalement la mémoire, mais aussi le temps du GPU", explique M. Frazier. "Nous essayons maintenant de tirer parti de choses telles que les tableaux de textures pour retrouver une partie de la fidélité perdue.

Gestion des dossiers de projet
Gestion des dossiers de projet

Pour s'assurer de pouvoir fournir du nouveau contenu en continu et dans les délais, Ramen VR utilise Unity Version Control (UVCS) pour gérer le projet. "Il nous a permis d'améliorer notre productivité, nos flux de travail et de travailler en collaboration beaucoup plus facilement", explique le programmeur Jordan J.

UVCS dispose de deux flux de travail pour les artistes et les ingénieurs, et les coéquipiers peuvent choisir de travailler de manière centralisée ou distribuée tout en s'engageant dans le même référentiel. "La centralisation des flux permet de réduire les accidents et les décalages entre le local et le distant par rapport à ce que l'on observe avec Git", explique M. Frazier. Ramen VR n'a jamais perdu de données de projet depuis qu'il a adopté l'UVCS.

Rassemblement des joueurs
Rassemblement des joueurs

La mise en œuvre intelligente de l'ECS et l'optimisation visuelle avec URP permettent aux joueurs de partir à l'aventure ensemble et d'explorer le monde gigantesque de Zenith sans subir de ralentissement ou de perte de progression. Grâce à une technologie évolutive et personnalisable, Ramen VR est en mesure d'ajouter de nouveaux contenus au Zenith pour les années à venir.

"Le fait que nous utilisions Unity réduit considérablement la complexité du développement pour plusieurs plates-formes.
LAUREN FRAZIER / RAMEN VRCTO
"Unity est devenu beaucoup plus stable au cours des dernières années. Lorsque nous avons commencé à travailler avec Unity, de nombreuses fonctionnalités étaient lancées en permanence. Nous avons été les premiers à adopter l'ECS, le DOTS et l'URP".
ANDY TSEN / RAMEN VRCEO
Légende Zenith
Réalisez vos plus grandes ambitions

Joignez les développeurs du monde entier qui utilisent Unity pour créer des jeux VR réussis.