Unreal Engine 5 で未来への道筋を描く EVERSPACE 2

Lumen の新たなライティングによる Beltegrade の再発見

2024年4月29日
こんにちは。ROCKFISH Games のプロデューサーの Caspar Michel と、リード VFX/環境 3D アーティストの Marco Unger です。私たちはドイツのハンブルクを拠点とする小規模なチームのメンバーで、スペース アクション ゲームに特化して EVERSPACE シリーズを制作しています。最新のタイトル EVERSPACE 2 は、2023年4月に PC で、2023年8月に Xbox および PlayStation でリリースされています。さらに最近では、2024年4月29日の Incursions アップデートで EVERSPACE 2 を Unreal Engine 4 から Unreal Engine 5.3 に移行しました。ここでは、ROCKFISH が移行を経験して判明したいくつかのメリットや課題を共有します。

EVERSPACE 2 を UE4 のバニラ バージョンから UE 5.3 に移行するという目標は、ゲームの長期的なメンテナンス性を確保し、将来的なコンテンツの拡張に向けて進行する開発をスムーズにするためのものです。これは戦略的なアップグレードであり、次期開発フェーズおよび更新の中断を防ぐことを目的としていました。この作業が完了すれば、今後の頭が痛い問題が少なくなるだろうと考えていたのです。
Prescott Station における、環境光の星の光と複数の光源の混在は、Lumen (右側の画像) がその優れた機能を発揮する絶好の機会となっています。
当スタジオでは、最新のテクノロジーを利用し、開発中にエンジンを定期的にアップグレードしており、プラットフォームの拡張機能を大いに活用しているため、古い SDK ではそれらの一部が正しく機能しなくなります。EVERSPACE 2 を継続的に開発する計画がなければ UE4 のままになっていた可能性もありますが、拡張コンテンツの作成を計画していたため、非推奨のツールのために解決策を見つけようとすれば大幅に時間を失っていたことでしょう。

Lumen を有効にする

現在、EVERSPACE 2 は、多くの人によって市場で最も魅力的な宇宙作品の 1 つであると考えられています。特に、ゲーム内のライティング、事前計算された GI ソリューションの利用や、ゲーム内の複数の太陽系全体に散らばるすべてのタイプの領域にスクリーン スペース グローバル イルミネーション (SSGI) を利用している点を誇りに思います。しかし、当スタジオの高性能のハードウェアを使用しても、極めて詳細なライトマップの計算には数日かかります。
Lumen (右側の画像) による間接グローバル イルミネーションは、サーフェスからのライトのバウンスをシミュレートし (通常は高負荷の計算となる)、よりリアルな (または高忠実度の) シャドウのディテールを生み出し、シーンや領域の特徴を際立たせることができます。
Lumen は、構成ファイル (*.ini) で変数の設定を単に「True」にするだけで実装できました。ゲーム開発では珍しいことに、この機能はすぐに利用できたのです!当初、当スタジオでは、動的グローバル イルミネーションおよび反射システムを実装することには懐疑的でしたが、以前のベイク済みの GI ライトマップでは不可能だった方法で Lumen がすでにすばらしいビジュアルを実現し、改善していることをすぐに認識しました。
この古代生物の骨は、Lumen をオンにすること (右側の画像) でさらに風化した印象を与えます。
Lumen の実装はわずか数クリックで済み、大規模な環境に対処するために ini でレイ トレーシング シーンのカリング半径を増やす微調整を行いました。また、Lumen と組み合わせてスクリーン スペース アンビエント オクルージョン (SSAO) を利用可能にしました。これはいくらか芸術的な選択であり、特にリアルなわけではありませんが、画面に表示される内容にさらなる深みをもたらすものです。 

Lumen を有効化した最終的な成果は目を見張るほどすばらしいものとなりました。特に、宇宙ステーション、古代の構造物、マイニング基地の複雑なジオメトリに星の光が反射し、コントラストが大きくなるライティングの状況ではこれが特に顕著です。
Lumen を使用したシャドウ (右側の画像) は、この採掘で忙しいコロニーにさらなるディテールをもたらしています。
ただし、すべてが Lumen を有効化するように簡単だったわけではありません。移行に伴い、大幅な変更が加えられた Niagara パーティクル システムに関連する問題がいくつか発生しました。一部のモジュールは非推奨となり、エディタで自動的に既存のシステムを変換/更新しようとすると、その他はマージされてエラーにつながりました。マテリアルの変位を取り除くとともに VFX の多くも再作業が必要となりましたが、レーザーの光を多用し、カラフルな爆発が登場するゲームであるため、これには多くの作業が必要でした。しかし、今後のリリースに向けて習熟しておくために、ここでの取り組みは長期的に意義あるものだと感じていました。

課題、バグ、およびハードル

合計すると、開発、会議、トラブルシューティング、移行に伴って発生した多くのバグ修正などを行うために、プログラマーは初回の移行に数百時間を費やしました。 

Unreal Engine 4 でのメジャー バージョン間の移行は行っていたものの、Unreal Engine 5.3 への移行時にはまた初期の問題に直面しました。すぐさま多数のバグやシステムの非互換性に対処しなければならなくなったのです。シェーダー、マテリアル、カットシーン、VFX、パーティクル、物理、ストレッチしたテクスチャが壊れたり、ユーザー インターフェース (UI) 要素のちらつきや破損が発生したり、ビーム レーザーが切れたりするなどの問題が発生しました。これが発生した問題の完全なリストではありませんが、どのような種類のバグや問題が品質保証チームや外部テスターによって記録されたかの参考にはできるでしょう。 

Unreal Engine 5 への移行プロジェクトを開始してまもなく、当スタジオでは、短いブログを公開し、視覚的なバグを示したのですが、これがプロジェクトの取り組みに関するコミュニティとの共有手段となり、ゲーム開発の裏側を面白く紹介することにつながりました。
多くのロケーションはすでにすばらしいビジュアルを備えていましたが、Lumen によるライティング (右側の画像) は、それぞれの隕石の特徴を際立たせ、これらの粗いサーフェスに視覚的な質感をもたらしています。
UE5 に移行した直後の初期のバグの 1 つは、一部のマテリアル シェーダーが誤って関連付けられていることにより、宇宙船の継ぎ目が光ることでした。プレイヤーの宇宙船が映画「Tron」のような見た目になる問題は、特別なビジュアルの Supporter Pack DLC を制作しなおした頃から、コミュニティによって質問がすぐに行われるようになりました。

エンジンの移行を 2023年11月28日から開始し、プロジェクト全体を通じて継続的に最適化を行っています。最も大きな問題は、全体的なパフォーマンス損失が発生することで、PlayStation 5 と Xbox Series X および S で最も深刻でした。一部のレベルにおいて、PlayStation 5 と Xbox Series X は安定した 60 FPS から 30 FPS を下回るほどになった上、これには明確な原因があるわけではなく、複数の小さな問題が積み重なって問題が発生していました。こうしたパフォーマンスの問題については、問題が発生している領域から不要な背景の NPC の宇宙船を削除し、ブループリントへのネイティブ化を行い、アクタ/コンポーネントのティック レートを最適化することでほとんどが解決しました。
宇宙ステーションなど、ワールド外のプラットフォームは Lumen の動的ライティング (右側の画像) によって視覚的に大幅に改善しました。

機能と特長

Lumen に加え、Unreal Engine 5 への移行によって、NVIDIA Reflex によるレイテンシー低減やフレーム生成、Intel XeSS アップスケーラー、ハイエンド GPU を使用する PC プレイヤー向けにフレーム補間を行う AMD FSR 3.0 アップスケーラーなど、ゲーム内で切り替え可能な機能を実装することができました。すべてのプレイヤーがこうした機能を完全に利用できるハードウェアを持っているわけではないため、それぞれを切り替える機能を追加したのです。

EVERSPACE 2 のメンテナンス性と今後のコンテンツの開発は、移行しなかった場合に比べて大幅にスムーズになるはずです。現在のツールに移行したことで、Unreal による当スタジオの開発ニーズのサポートが向上しました。Unreal Engine 5 の新しいツールや機能については、すでに確認することができました。これには、Unreal Insights プロファイリング アナライザーなどの継続的な改善などがあり、今後の拡張によって作業が迅速化する予定です。
Lumen (右側の画像) は、日中の厳しい日差しの中で自然なサーフェスをよりはっきりと表示するのに役立っています。

他のデベロッパーのためのアドバイス

エンジンの移行は面倒なタスクです。特にすでに 1.0 を利用しているプロジェクトでは簡単に検討できることではないでしょう。当スタジオのゲームのように、長いライフスパンでサポート対象のコンテンツが先々に控えている場合は移行に取り組む価値があると考えています。 

Lumen は、EVERSPACE 2 に実装する価値がある機能だと思っており、実装自体も考えていたよりかなり簡単でした。すでに述べたように、UE4 ではベイクしたライティングと SSGI を組み合わせて利用していました。つまり、各オブジェクトでライトマップ UV を使用し、事前計算されたライティングをサポートすることに特化した方法でコンテンツを制作していたのです。しかし、Lumen は動的ライティング システムであるため、以前に異なるライティング ソリューションを使用して制作したコンテンツでも適切に機能しました。Lumen では、動的ライティングと事前にベイクされたライティングのどちらのオブジェクトでも関係ありません。そのため、UE5 に移行するコンテンツではほとんど調整を行う必要がありませんでした。

コミュニティは移行の構想に盛り上がりましたが、当スタジオでは、プレイヤーが懸念を示したパフォーマンスに関する問題を強く意識しています。移行時にはマイルストーンの前およびマイルストーンごとに自動パフォーマンス チェックを実行することで、最適化に役立つベンチマークとインジケータを取得できました。このパフォーマンスの問題は見落としていた点であり、すぐに修正を行ってプロジェクトに反映したところ、テスト手法の開発に多くの時間を費やさなくてはならなくなりましたが、この問題に対応する機能をゲームに追加でき、生成されるデータの対処方法に関しても学ぶことができました。パフォーマンスに関する問題を早期に調査し、解決したことで、プレイヤーの体験に影響する数多くの要素に対処することができました。

時間は常に重要な要素です。問題は予想以上に多く発生するものですが、どれだけバグが発生したとしても、そのほとんどは軽微なもので修正も簡単です。作業を大変なものと考えず、取り組んでいるプロジェクトについてコミュニティに対して透明性を確保すると、その取り組みに対してファンに感謝してもらえるようになります。

最後に、Unreal Engine 5 との関連で、ゲームのアップデートは大きな注目を集めました。報道機関やパートナーは、エンジンやその機能によって実現できる可能性に高い関心を示していました。独立したスタジオとしては認知度がすべてであるため、これは当スタジオの取り組みにとって予想外の成果となりました。
多数の光源を伴う工業用ロケーションや複数のタイプのハード サーフェスは、Lumen を有効にすること (右側の画像) でシャドウが低減されています。

まとめ

UE5 への移行は、短期間のうちに Lumen などの新機能や最新のアップスケーラーのプラグインを実装するだけでなく、新しい機能の追加やプロセスの再調査の機会をもたらしました。同様に重要なこととして、チームには UE5 を学習する機会と、今後のプロジェクトのメリットとなる機能がもたらされました。長期的には、このプロジェクトに取り組まなかった場合と比べて、今後の EVERSPACE 2 のコンテンツの開発は大幅にスムーズになると予想しています。 

解決が必要な一部の最適化のハードルは残っているものの、チームと EVERSPACE 2 にとって Lumen の実装と Unreal Engine 5 への移行は成功したと感じています。

今すぐ Unreal Engine をダウンロードしましょう!

世界中でもっともオープンで高度な作成ツールを入手しよう。
Unreal Engine にはあらゆる機能とソースコードへのアクセスが含まれており、ただちに開発に利用できます。