Ramen VR がどのようにして「ハードモードのゲーム開発」を克服し、世界初のクロスプラットフォーム VR MMO でプレイヤーを 1 つにしたかをご覧ください。
『Zenith:The Last City』
小規模なリモートチームが VR で MMO を作成する方法柔軟な開発プラットフォーム、マルチスレッドプログラミング、堅牢な DevOps ツール、活発なコミュニティのサポートにより、Ramen VR はプレイヤーを喜ばせ、ゲームの新時代を切り開く、高度に最適化されたマルチプラットフォームゲームをリリースしました。
課題
すべての主要な VR プラットフォームで成功を収める高性能 VR MMO の制作
プラットフォーム
PlayStation® VR、PlayStation® VR2 Quest、Quest 2、Rift、SteamVR
チームメンバー数
22
開発拠点
リモート

野心的な賭け
Andy Tsen氏とLauren Frazier氏は2016年にOculus Launch Padで出会い、MMOと『isekai』アニメへの関心を共有して絆を深めました。2 人は、これらのジャンルを組み合わせて、VR で新しい没入型 MMO 体験を制作する機会を見出しました。2019 年、彼らは仕事を辞め、Ramen VR を設立し、『Zenith:最後の街

成果
- わずか 15 人のチームで VR MMO をローンチ
- Quest と Steam でローンチ時に第 1 位を獲得し、ブレイクアウトを果たす
- 現在までに 4,500 万ドル以上の投資資金を調達
- Unity Version Control でプロジェクトのデータロスを解消

思い切ったビジョンに対する賛同を得る
『Zenith:Tsen 氏と Frazier 氏は、開発初期段階で資金を調達しました。「私たちのスタジオ名は、当時食べれるだけのお金があったからです」と Tsen 氏は冗談を言います。
エンジェル投資家がすべてを変えたまもなく、Ramen VR は Y Combinator アクセラレータープログラムに登録され、45 日間で 28 万ドルの収益を上げ、記録的な Kickstarter キャンペーンを行いました。バッカーは、プロジェクトの範囲と、それを実現するというスタジオの決意に感銘を受けました。
「MMO を作ったことがある人なら、誰もそんなことはしないでしょう」と Tsen 氏は言います。「スタートアップ、VR、MMO、クロスプラットフォーム。ハードモードのゲーム開発です!」

適切なツールを見つける
TsenとFrazierは以前、受賞歴のあるUnityプロジェクト (VR MOBA『Conjure Strike』)でコラボレーションしており、さらに野心的な取り組みができると確信していました。
「VRでこの規模のゲームを構築するのがどれほど難しいかわかっていましたが、その難易度についての考え方と実際の難易度の間にはギャップがあるとも考えていました」とTsen氏は言います。「そのギャップは、Unity のようなプラットフォームやツールで、はるかに小さなチームではるかに大規模なコンテンツ制作を可能にしていました。」
Ramen VRは、15人のチームでZenithを立ち上げましたが、今では22人のコア チーム メンバーがいます。新しい開発ツールを選択する際には、カスタマイズ可能で、簡単に統合でき、既存のシステムとうまく連携し、技術的な貢献者とそうでない貢献者の両方にとって使いやすいものであることを確認します。

DOTS をで基盤を築く
システムベースのゲームである MMO には、強力でスケーラブルな技術基盤が必要です。開発の初期段階では、Ramen VRはMonoBehaviourを使用してZenithのシステムを構成していましたが、何百もの同一のゲームオブジェクトにわたってロジックを何百回も実行することは非効率的でした。同社は、DOTS(Data-Oriented Technology Stack)の主要な柱であるUnityのECS(Entity Component System)フレームワークを活用して、オブジェクト指向プログラミングの欠点を回避しました。
Frazier 氏は「MMO は ECS にとって素晴らしいアプリケーションです」と述べています。「『Zenith』では、同時に数千のエンティティを共存させる必要があり、 ECS によって大規模な実行が可能になります。」

適切なワークフローの選択
新しいワークフローでは、すべての「アクター」ゲームオブジェクト(プレイヤー、モブ、収集可能アイテム)に対応する ECS エンティティがあります。ECS はゲームオブジェクト内を走り回り、関連するタグをチェックし、見つかるたびにロジックをトリガーします。
「状況に適したワークフローを選べるのは助かりました。純粋なオブジェクトと純粋なエンティティのどちらを使うこともできましたが、選択する必要はないと思います」と Frazier 氏は言います。

レート制限の回避
ECS はインフラストラクチャの課題にも役立ちました。Zenithのアルファテストには12万人以上のプレイヤーが登録し、Ramen VRはこれがサーバーに与える負荷を過小評価していました。多数のプレイヤーがログオフすると、サーバーがストレージ容量を超え、プレイヤーのセーブデータが失われました。この問題を解決するために、チームはクエストの進行状況を追跡する ECS タグを作成しました。「当社の ECS システムはタグをチェックし、タグを取得するとキューに入れて、X 秒ごとにキューから取り出して外部ストレージに書き込みます」と Frazier 氏は説明します。

デバイス間でのビジュアルの最適化
『Zenith』はマルチプラットフォームの MMO であるため、ゲームをできるだけ多くのプレイヤーに届けるためには、すべての主要な VR デバイスに合わせてグラフィックスを最適化することが重要でした。VR ゲームの制作とは、2 倍のゲームオブジェクトを高解像度、高フレームレートで描画することで、優れた没入感を確保し、VR 酔いを減らすことを意味します。そこで同社は、ユニバーサルレンダーパイプライン(URP)を選択しました。
「ユニバーサルレンダーパイプラインは、PC、Android(Oculus Quest)、PSVR 向けにリリースしていたため、私たちにとって最善の選択でした」と Frazier 氏は言います。「URP のおかげで、すべての VR プラットフォーム向けにビルドできました。」

レンダリングコストの削減
URP のシングルパスインスタンスレンダリングにより、Ramen VR は両目のビジュアルを 1 か所でレンダリングし、CPU と GPU の時間を節約し、パフォーマンスを向上させることができました。カスタマイズ性もプラスでした。「昼夜のサイクルの変化に合わせて、標準的なシェーダー(Simple Lit、Unlit)を編集しました。日没時にはオレンジや赤にしたり、夜には青みを加えたりしました」と Frazier 氏は言います。
同スタジオは、URPで達成したことに満足していますが、将来のリリースでZenithのビジュアルをさらに進化させたいと考えています。Frazier 氏は次のように述べています。「元々の品質の多くが、ハードウェアの制限(主にメモリと GPU 時間)のために犠牲になりました。「現在、私たちはテクスチャ配列などを利用して、失われた忠実度をいくらか取り戻そうとしています。」

プロジェクトファイルの管理
Ramen VRは、新しいコンテンツを継続的かつスケジュールどおりに提供できるように、Unity Version Control(UVCS)を使用してプロジェクト管理を行っています。プログラマーの Jordan J. 氏は次のように述べています。「これにより、生産性とワークフローが改善され、共同作業が格段に簡単になりました。
UVCS にはアーティストとエンジニア向けのデュアルワークフローがあり、チームメイトは同じリポジトリにコミットしながら集中型と分散型のどちらで作業するかを選択できます。「一元化されたフローは、Git などで見るよりも、ローカルとリモートの事故やミスマッチが少ないことを意味します」と Frazier 氏は言います。Ramen VR は UVCS を採用して以来、プロジェクトデータを失うことはありませんでした。

プレイヤーを 1 つにする
スマートなECSの実装とURPによるビジュアルの最適化により、プレイヤーは速度低下や進捗状況の変化を体験することなく、共に冒険し、Zenithの広大な世界を探索できます。また、スケーラブルでカスタマイズ可能なテクノロジー スタックにより、Ramen VRは今後何年にもわたってZenithに新しいコンテンツを追加し続ける準備が整います。
“「Unity を使用していることで、複数のプラットフォーム向けの開発に伴う複雑さが大幅に軽減されます。」”
Lauren Frazier - Ramen VR
CTO“「『Zenith:『The Last City』の環境アートは、多くの変更とサイズの大きなファイルが含まれています。Unity Version Control では、これらの変更のプッシュとプルを非常に簡単に処理できます。」”
Jessica Sweeney - Ramen VR
Environment ArtistUnity を使って成功を収めている世界中の開発者の仲間入りをしましょう。
