
2021年もオンライン開催となったゲーム開発者向けカンファレンスCEDEC2021にて、開催された「Unreal Engine 5 早期アクセスの注目機能総おさらい Part 2」セッションのレポートをお届けします。
このセッションはPart1とPart2に別れており、今回の「Unreal Engine 5 早期アクセスの注目機能総おさらい Part 2」では、プログラマやエンジニア向けの機能を紹介するもの。なお、Part1はアーティストやデザイナー向けの機能を紹介していました。登壇者は、Epic Games JapanのSoftware Engineerである岡田和也氏と、鍬農健二郎氏、鈴木孝司氏、寺内大起氏、UDN Account Managerのベルナル・ウィリアム氏、Trainerの塩谷祐也氏の6名です。
World構築機能
Unreal Engine 5(以下、UE5)では、大規模なワールドを構築するWorld構築機能のアップデートが追加されています。それらを具体化するために早期アクセス版UE5が公開されるタイミングでリリースされたサンプルデモ「古代の谷」が公開され、このデモにはWorldを構築する主要な機能の1つであるWorld Partitionを主に活用しています。







Unreal Engineの次期物理エンジンChaos
ChaosはUE4.23から導入されている物理エンジンで、UE5からデフォになります(PhysXのサポートは終息)。UE5へ完全に内蔵されたことによって効率的なワークフローや、デバッグ機能を組み込むことが容易になっています。また互換性についても考慮しているようです。











次はUnreal Insightsです。これはアプリケーションのパフォーマンスを確認するツールで、ボトルネックとなっている処理を特定・改善することで最適化を進められるものです。Memory InsightsはUE4.26より追加された機能で、アプリケーションにて使われるメモリ使用量を追跡することができ、メモリリークの追跡などができます。




Gameplay Update
続いてはUE5早期アクセス版におけるGameplay Updateです。Game FuearesプラグインとModular Gameplayプラグインは、これらのプラグインによってコンポーネントのように様々な要素を分割させることが可能。スライドの通り、メイン実装とアセットはそのままにシステムとミニゲーム、期間限定イベントをそれぞれ成り立たせる可能で、『Fortnite』のパイプラインから着想を得て開発されたとのこと。

一定規模以上のプロジェクトや定期的なアップデートを繰り返すプロジェクトの場合は、様々な実装やアセットから対応するものが増加。敵との戦闘中に不要なロードをしてしまうなどの問題が生じることもあります。



従来の解決方法のいいとこ取りをしたのが先に説明したGame FeaturesプラグインとModular Gameplayプラグイン。プロジェクト本体から独立し、各実装を格納管理できるプラグインです。



「古代の谷」サンプルではドローンのシーンでGame Featuresプラグインが活用され、「ホバードローン」と言うプラグインを有効化。不要になったらプラグインをアンロードし、先のプラグインを使えないようにしています。









OnlineSubsystemEOS
OnlineSubsystemEOSはオンラインサービスにアクセスする機能で、UE5だけでなくUE4.27にも実装されます。スライドでは、ゲームアプリケーションはオンラインサブシステム共通のインターフェイスを持ち、プラグインを切り替えることで各プラットフォームサービスへ切り替えられます。


またEpic Online Servicesは、Epic Gamesが提供するオンラインサービスプラットフォームで、マッチメイキングやランキング、ボイスチャット、実績、エピックアカウントによるログインなどを完全無料で提供。様々なプラットフォームに対応し、EOSを利用したゲームの販売に制限がありません。

UE上ではオンラインサブシステムが、オンラインサービスではEOSを提供。しかし、Epicによる公式のオンラインサブシステムが提供されていないため、ネットワーク関連は独自に実装するほかいけませんでした。なおUE4.27にてオンラインサブシステムEOSが追加されます。これにより用意に実装することが可能です。




最後にサポート情報やライセンス情報などを告知しセッションを終えました。以上が「Unreal Engine 5 早期アクセスの注目機能総おさらい Part 2」の講演内容でした。UE5で独自に実装される物理エンジンChaosの特徴や、システムの脱着が容易なGame Featuresプラグイン、オンライン周りの実装方法などが紹介されるものでした。
UE5早期アクセス版は、推奨スペックがそれなりに高いものの、数千万ポリゴンを持つオブジェクトを数百表示させるなどのユーザーによって様々な実験が行われ、どこまでポテンシャルを持っているかが試されてきました。そのため、アーティスト向けの講演「Part1」を読むとより本エンジンが持つ強みをより理解しやすいかもしれないので、こちらもあわせてお読み下さい。