Vライジング1,600台のECSシステムで構築された吸血鬼の領域の裏側
Stunlock StudiosがどのようにしてPC向けにモンスター級のオープンワールド・ヴァンパイア・サバイバル・アドベンチャーを制作し、PlayStation®5で発売することでさらに多くのプレイヤーを獲得したかをご紹介します。
課題:
高性能な60人マルチプレイヤー・サバイバル・ゲームの立ち上げ
プロジェクトのスタッフ:
~40
プラットフォーム:
PCおよびPlayStation 5
所在地:
Skövde, Sweden
多人数参加型のサバイバルゲームを大規模に作るには?Vライジングはこの人気ジャンルを不吉にアレンジしたもので、プレイヤーは巨大なオープンワールドでヴァンパイアとなる。Stunlockは大きな野望を抱いており、それに応じてスコープを設定し、開発の早い段階でUnityのDOTS(Data-Oriented Technology Stack)とHDRP(High Definition Render Pipeline)を導入して、これまでで最も複雑なゲームのための安定したスケーラブルな基盤を構築しました。
DOTSによって、スタンロックは、大規模化するプロジェクトの開発を効率的に管理するために必要な柔軟なコード・アーキテクチャを手に入れ、HDRPによって、ゴシックな雰囲気を確立するために不可欠なVisuallive Fogのような高忠実度の視覚効果を実現した。抜け目のない計画と適切なツールを武器に、StunlockはPCでV Risingを発売し、アーリーアクセスとリリース時に絶賛された。このゲームは現在までに500万本以上を売り上げている。
『V Rising』(Stunlock Studios 制作)
成果
- 8つのユニークなバイオームを持つ、5平方キロメートルを超える広大なサーバーベースのゲーム世界を構築。
- 160,000以上のインタラクティブ・オブジェクトをリアルタイムでストリーミング・レンダリング。
- 21,000のベイク済みプレハブ、450のベイク済みサブシーン、1,600のECSシステム、2,700のパーティクルシステムを管理
- Unityプロファイラを使用して、最適でないコードや不要なゴミの生成をすばやく特定し、数百時間を節約。
- SRPバッチャーで複数msのフレームラグを解消
- PlayStation™NetworkのトロフィーおよびSteam Achievementsのアンロック数は累計340万を超え、平均35時間のゲームプレイを記録。
- ボイスチャットの自動化、DualSense™ワイヤレスコントローラーの触覚フィードバック、アダプティブトリガー、コントローラーのサウンドエフェクトのサポート、PlayStation™Networkトロフィーシステムなど、PlayStation®5ならではの機能を実装。

ゲームの世界を偵察する
V Risingの舞台であるヴァルドラン大陸のために、スタンロックは8つの異なるバイオームを持つインタラクティブで永続的な世界を構想した。それぞれが霧に包まれ、リアルタイムの光と影による昼夜のサイクルを特徴とし、一貫したオンラインゲームプレイを提供するために、実行時のパフォーマンスを維持する必要がある。「スタジオの共同設立者であり、システム・プログラマーのフレドリック・ハラルドソンは、「私たちは、Unityで制限なくすべてを実装することに決めました。

DOTSによる事業拡大
スタンロックは、Unityが最近発表したDOTSを注視していた。DOTSは、彼らが予想していたパフォーマンス上の課題の多くに対する解決策を提示していた。この技術はまだ実験的なものだったが、Vライジングは開発の初期段階にあり、スタンロックのプログラマーたちはすでにデータ指向設計の経験を持っていた。また、この技術を早期に採用することで、Unityとより緊密な提携を結び、DOTSの実戦テストと引き換えにプロジェクトの支援を受ける機会も得られる。
V Risingの可能性に興奮したStunlockの開発者たちは、Unity 2019.3でプロジェクトの技術的なフレームワークの作成を開始し、チームの他のメンバーは、以前Battleriteの 開発に使用した社内エンジンを使用してプロトタイピングを続け、開発の流れを維持した。

パフォーマンス・ドレイナー退治
DOTSとECSを使ったVライジングのプロジェクト・アーキテクチャの構築には時間がかかったが、そのメリットはすぐに明らかになった。「DOTSによって、より多くのコンテンツを扱える基盤を構築し、ストリーミングのエンティティやアセットを効果的に活用できるようになりました」とStunlock Studiosの共同設立者でテクニカル・ディレクターのRasmus Höökは言う。サブシーンと アセットストリーミングは、プレイヤーがゲーム内で見ることができるものに基づいて、実行時に動的に要素をロードしたりアンロードしたりするために使用されます。この技術によって、Vライジングの巨大な世界を探索することが、プレイヤーにとってよりパフォーマンスの高い体験となる。
VライジングをECSで構築することは、ゲームコンテンツを管理するためにサブシーンベイキングを活用することでもあった。エンティティはUnityのコアシーンシステムと互換性がないため、Unityのシーンに直接含めることはできません。その代わりに、ベイクによってシーンからエンティティをロードできるようになり、GameObjectと MonoBehaviourコンポーネントを、実行時にロードできるエンティティとECSコンポーネントに変換する。
『V Rising』(Stunlock Studios 制作)
ラスマスは、このようにランタイムデータとエディターデータを明確に分離することが、DOTSとエンティティーで作業する最大の利点のひとつだと主張する。「エディターで作業しながら、オーサリング用のプレハブを作成します。プレハブは基本的に、MonoBehaviorsを持つ標準的なGameObjectです。しかし、これらのプレハブはあくまで編集用であり、ゲームそのものに直接使用されることはありません」と彼は説明する。「その代わり、ベイクと呼ばれるプロセスを経て、ランタイム・コンポーネントに変換される。オーサリング用プレハブはエディターでのみ使用されるため、実際のゲームを乱雑にする心配をすることなく、ワークフローを改善するために機能やデータを追加することができます。"
このようにオーサリングプレファブを使用することで、Vライジングの更新が容易になります。システムの1つの要素に手を加えて、アーティストやデザイナーに関連する何千ものプレハブを更新するよう依頼するのではなく、スタンロックのプログラマーは、更新されたシステムに必要なデータを引き出すためにベイクコードを変更するだけでいいのだ。「これはメンテナンスにも役立つが、パフォーマンスにも当然役立つ」とラスマスは言う。「プレハブにはエディター専用のデータがあり、それはランタイムコンポーネントに変換されない。
『V Rising』(Stunlock Studios 制作)
障害を乗り越える
スタンロックが予想したように、実験的な技術を使うことにはいくつかのハードルが伴う。「当初抱えていた問題の多くは、自業自得だった。私たちが作ったエンティティの多くは大きすぎて、コンポーネントがたくさんあり、私たちが望むほど多くのエンティティを一緒にすることができないのです」とラスマスは言う。「この問題を解決するために、私たちはボールを小さくし、チャンクのサイズを大きくしました。すでにゲームを作ってしまった以上、経験から学ぶ以外にできることは限られている。"
DOTSでの作業は、これまでのUnityの開発パラダイムとは大きく異なり、より複雑なものであるため、スタンロックはチームに徐々に乗り込んでいった。プログラマーは、新しいオーサリングプロセスに慣れるために、簡単なコンポーネントやオーサリングコードを書く小さな仕事を割り当てられた。やがて彼らは、C#ジョブ・システムなどのDOTSコンポーネントを使用し、チーム全体で開発をスピードアップし、品質保証を向上させるツールを構築するようになった。
「C#ジョブシステムを使って、プロジェクト内のメッシュをスキャンしてジオメトリの重複を探したり、メッシュのポリゴン密度を計算して、サブピクセル三角形の量を減らす必要がありそうなアセットを特定したりするツールを構築しました」とテクニカル・アーティストのフィリッパ・アルヴィドソンは説明する。
「DOTSのデータ指向のアプローチは、GameObjectsからシステムへと考え方をシフトする最初の衝撃を乗り越えれば、とても直感的だと感じるので、Unityでコードを扱う新しい好ましい方法です。もちろん、パフォーマンス面でのメリットも大きい。
『V Rising』(Stunlock Studios 制作)
技術力の低いチームメンバーのために、スタンロックはDOTSのコードベース上にワークフローを実装し、プロジェクトへの貢献をより簡単にした。あるワークフローでは、プレイヤーがスポーンしたときに発生するエフェクトや、特定の条件が満たされたときに適用されるバフなど、事前に定義されたイベントを生成してリッスンするプレハブコンポーネントを作成できる。このシステムを使うことで、デザイナーはDOTSの深い技術的知識がなくても、モジュール化された管理しやすいゲームプレイ要素を作ることができる。
2つ目のワークフローは、主に機能実装のために構築され、デザイナーはAPIに制約のあるスクリプトレイヤーで作業する。これにより、コンポーネントと相互作用し、さまざまなイベントに登録できる独自のスクリプトを作成することができ、制作のスピードが上がる。
『V Rising』(Stunlock Studios 制作)
HDRPでグラフィックスとゲームプレイを解き放つ
VライジングはHDRPで構築されており、より忠実度の高いグラフィック機能を解放することで、プレイヤー体験を興味深い形で形作った。
「Visualliveフォグは、このゲームに最も影響を与えた視覚効果です。「HDRPを使うことを知ったアーティストは、そのスタイルに合わせた。Visualliveフォグは雰囲気を作り出し、呪文やアビリティに視覚的な風味を加えるだけでなく、視線のメカニズムとして使用され、プレイヤーから見えないエリアをマスキングする。

Stunlockは、HDRPのPhysically Based Skyを使って V Risingの昼と夜のサイクルを管理する。日中、プレイヤーは日光の下にいるとダメージを受けるため、世界を移動するには物陰でこそこそしなければならない。このメカニズムがイライラさせないように、安全地帯と有害地帯を明確に定義する必要があった。
「リアルタイムレンダリングは、1日のさまざまな時間帯に美しい変化をもたらすだけでなく、太陽がどこを焼くのかをプレイヤーに視覚的に知らせるためにも非常に重要です」とフィリッパは言う。"HDRPはこのために非常にうまく機能し、私たちのアーティストが時間帯ごとに異なるボリューム・プロファイルをエリアごとに設定し、その間をスムーズにブレンドできるようにしました"
『V Rising』(Stunlock Studios 制作)
Stunlockは、HDRPのスクリプト性を最大限に活用し、何百ものカスタム視覚効果、シェーダー、ポスト処理パスを構築しました。フィリッパは、カスタムポストプロセッシングのパスとして作られた、カメラに近いオブジェクトを暗くするエフェクトを思い出す。
「例えば、スタート地点の地下墓地には、ヴァンパイアの上にそびえ立つ高い柱がある。後処理をすることで、カメラに近づくほど暗く見えるのです」と彼女は言う。「すぐに不穏な雰囲気が漂い、それが大きなアクセントになっている」。
『V Rising』(Stunlock Studios 制作)
Stunlockはまた、HDRPのソースコードを彼らのニーズに合わせてカスタマイズし、パフォーマンスを向上させるために冗長な機能や計算を取り除いた。彼らは、典型的なHDRPの効果を超えたコンポーネントをドライブするために、ボリュームプロファイルを拡張した。これにより、アーティストやデザイナーのような技術力の低いゲーム開発者でも、天候、音楽、効果音などの要素を、エディター上でシーンごとに簡単に設定できるようになりました。
「アーティストにこのことを伝えることができたのは、本当に力強いことだった」とフィリッパは言う。「こうすることで、最小限の技術サポートで、それぞれの時間帯にそれぞれのバイオームを思い通りに見せることができる。間違いなく時間の節約になった」。
『V Rising』(Stunlock Studios 制作)
PlayStation 5に新しい血を求める
V Rising』はStunlockにとって初のコンソールゲームであり、ソニーから打診を受けた彼らは、PlayStation 5で新たなチャレンジに挑み、数百万人以上のプレイヤーを獲得できる可能性のあるチャンスに飛びついた。
プログラマーは、ECS 1.0の追加的なパフォーマンス向上を利用するために、Unityのバージョンをアップグレードすることから始めました。PCビルドのメイン・スレッドが制限要因となっていたため、C#ジョブ・システムを使って他のスレッドに仕事を振り分けた。セーフ・スケジューリングは、メイン・スレッド上で他のタスクに干渉しないジョブを簡単に作成するのに役立った。「開発の大部分はEntities 1.0より前に行っていましたが、アップグレード後の今は、何が起きているかを確認するためにジャーナリングを多用しています。
グラフィックスの面では、バッチ処理がPlayStation 5のレンダリングパフォーマンスに大きな影響を与えたため、HDRPにUDIMワークフローを修正するツールを組み込み、異なるマテリアルの サブメッシュを組み合わせて ドローコールを削減できるようにしました。「レンダリングデータをより効率的な方法でGPUに送ることができるためです。
『V Rising』(Stunlock Studios 制作)
夜を支配する
PCでの1.0リリース、PlayStation 5のローンチ、そしてコナミデジタルエンタテインメント(KONAMI)の伝説的フランチャイズである『悪魔城ドラキュラ』との最近のパートナーシップの間で、Vライジングは力強く前進している。プレイヤーに魅惑的でユニークな体験を提供するために、新しいテクノロジーを大胆に試すことを厭わない小さなチームによる、卓越した技術的成果である。
DOTSによって、スタンロックはパフォーマンス上の問題を最小限に抑えながら、Vライジングに「あらゆるものを大量に」追加することができ、HDRPは、より没入的で魅力的なプレイヤー体験のために、心を揺さぶる視覚効果を生み出すのに役立った。今日、Vライジングは、コード行数ベースで市場最大級のDOTSベースのゲームであり、Unityは、野心的なゲームを構築するクリエイターのために、エディターのパフォーマンスと安定性をさらに向上させるために、制作から得られた洞察を活用しています。
「これほど多くのダイナミックで破壊可能な要素を盛り込むことは、最初から意図していたわけではありません。「これは、ECSがいかに優れているか、そしてパフォーマンス面で大きなメリットがあることの証明だ。DOTSがなければ、今日のVライジングはまったく違ったものになっていただろう」。
『V Rising』(Stunlock Studios 制作)
Unityで野心的なゲームを作る
Unity 6の強化されたレンダリングパフォーマンスと、より高速なマルチプレイヤーイテレーションは、より多くのデバイスで、より多くのプレイヤーにビジュアル的に魅力的でユニークなゲームを提供するのに役立ちます。今すぐ試すか、Unity Proを使って20以上のプラットフォームで新しいオーディエンスを見つけましょう。
©2025 Sony Interactive Entertainment LLC."PlayStationファミリーマーク"、"PlayStation"、"PS5ロゴ"、"PS5"、"PS4ロゴ"、"PS4"、"PlayStation Shapesロゴ "および "Play Has No Limits "は株式会社ソニー・インタラクティブエンタテインメントの登録商標または商標です。


