エピック・ゲームズが、同社のゲームエンジン“Unreal Engine”の最新版となるUnreal Engine 5(UE5)を正式公開した。なおダウンロードと利用は無料で可能(商用利用する場合は一定条件でロイヤルティが発生する)。
UE5は昨年アーリーアクセス版が公開された後、年末にUE5に移行した『フォートナイト』チャプター3やプレイアブルな技術デモ『The Matrix Awakens: An Unreal Engine 5 Experience』が配信され、その後エンジンのプレビュー版の公開なども経て、今回実際の製品開発に使用可能な正式リリースという形になる。
今回、本誌ではエピック・ゲームズのエンジニアリング担当ヴァイスプレジデントのNicholas Penwarden氏への取材なども行ったので、その内容をお届けしよう。
LumenとNaniteが可能にする次世代の描写
UE5を開発するにあたっての目標として、“次世代の高忠実度なビジュアルの実現”と“コンテンツ作りに集中するための技術的なハードルの低減”の2点があったという。UE5での新機能の核となっているLumenとNaniteもまた、その方向性を反映したものとなっている。
まずLumenは、リアルタイムにハイクオリティで自然な反射光を実現するというグローバルイルミネーションシステムだ。
実際何ができるのかと言うと、事前計算による焼き込みなどをしなくとも、ゲーム中で起こる太陽の角度変化や懐中電灯の点灯、ドアの開け閉めによる光の変化などがリアルタイムに反映される。作業の効率化という点では、エディター上でライトを編集したらすぐに実際にプレイヤーが目にするのと同様の結果を見られるのもポイントだとか。
一方のNaniteは“仮想化マイクロポリゴンジオメトリシステム”と呼ばれるもので、これによりこれまでは映画で使われていたような複雑かつ緻密な3Dモデルをリアルタイム環境で利用可能にする。
これまた、通常はそんな重いデータを読み込まずにモデルのデータ量や密度などを調整するものだが、見た目を損なわずにリアルタイム実行可能なようにNaniteのシステム側で調整してくれるというものになっている。
パフォーマンスと描写の両立を目指すアップスケールシステムなども
ビジュアル面などの計算量が上がっても求められるのが、60fps(秒間60フレーム)以上の高速な描画だ。
仮想シャドウマップ(VSM)は、Naniteと連動して適切な負荷でもっともらしいソフトシャドウ(影)を実現するというもの。
これに加えて、内部的に低い解像度でレンダリングして自然な見た目にアップスケールすることでパフォーマンスと描写を両立させるアップスケール系の技術“Temporal Super Resolution”(TSR)も搭載。アップスケール系の技術はGPUメーカー各社などからも発表されているが、TSRはハードウェア依存などがなくエンジン側で実現しているのがポイントとなっている。
オープンワールド開発を意図した機能も
また上記のような機能によって実現されるハイエンドなビジュアルをもったオープンワールド環境の構築も意図されている部分で、“World Partition”と呼ばれる機能や、“Large World Coordinates” (LWC)の導入などがその一環。
- World Partition
- ワールド全体を自動的に分割し、プレイヤーからの距離などに応じて自動的に調整した読み込みを行う
- One File Per Actor (OFPA)
- 1アクター辺りが1ファイルを持つようになり、全体で管理されないので複数のスタッフがお互いを待たなくても同一の領域の作業を行える
- データレイヤー
- 同じワールドに日夜での違いや“壊れる前と後”などのバージョン違いのレイヤーを持てる
- Large World Corrdinates(LWC)
- 内部的に倍精度値を使用し、リベースなどのテクを使わなくても超広大なワールドをそのまま処理可能になった
エディター内のモデリングやアニメーションツール、サウンド機能なども強化
別のコンテンツ制作ソフトと行ったり来たりしなくてもエンジン側で直接エディットできる部分が強化されているのもひとつの傾向と言えるだろう。たとえばアニメーション(モーション)まわりや、メッシュのモデリングまわりなどがそれ。
- 強化された実制作対応のコントロールリグ
- IKリターゲッタ
- スケルトンとプロポーションが異なるキャラクター間でアニメーションを転送可能。人間のアニメーションを狼に応用するといったこともできる
- メッシュモデリング・UV編集・ベイクやメッシュ属性のツールセットの強化
一方サウンドまわりでは“MetaSounds”というオーディオエンジンが入っていて、マテリアルエディタのようにグラフ形式でゲームと連動したサウンド面の設計を行っていくことができる。
“マトリックスのアレ”を含む2種類のサンプルを提供
またUE5の公開に合わせて、2種類のサンプルプロジェクトが公開される。これは大雑把に言うと、どの機能をどう使えばいいのかサンプルの実例から確認できるというもの。
“Lyra Starter Game”というオンラインマルチプレイ対応のアクションシューティングゲーム風のものと、オープンワールドの都市を舞台にした“City”というサンプルがあり、後者は冒頭で触れたプレイステーション5/Xbox Series X|S向けの技術デモ『The Matrix Awakens: An Unreal Engine 5 Experience』からマトリックスの権利が関わる部分を抜いたものとなっている。あのデモの後半のオープンワールド部分の裏側でどんなことをやっているのか確認できるというわけだ。
ミニオンラインインタビューでニッチな部分なども聞いた
UE5の概要の紹介に続いて、Penwarden氏(文中は“ニック”)に行ったオンラインインタビューの内容をお伝えする。
Nicholas Penwarden
エピック・ゲームズのVP of Engineering
1. 対応プラットフォームはUE4と同じ
――これで正式にUE5で作ったゲームが開発・出荷可能になったということでいいですか?
ニックはい、その通りです。
――対応プラットフォームはどうなのでしょう? プレイステーション5/Xbox Series X|S/PCですか?
ニックUE5の対応プラットフォームはUE4と同じなんです。なので今挙げていただいたものに加えて、プレイステーション4、Xbox One、Nintendo Switch、iOS、Android、そしてMacやLinuxなどもサポートします。
2. マトリックスデモでの改善点やそれ以降の改善点
――マトリックスのデモや、昨年のGDCで講演があったAlpha Pointデモからの改善点はどういったものがありますか? たとえばマトリックスデモでは妙に光が明滅したり、影が一瞬ポップしたり、ベランダのバルコニーの柵がちょっとジャギジャギに見えたりといったことがありました。あるいはGDCでの講演ではTSRの計算コストがまだ高いといった報告もありました。今回正式リリースということはいろいろと改善があったのではと思うのですが。
ニックそうですね、それらの時点からUE5にはたくさんの改善が行われてきました。
いま挙げていただいたような領域からいくつか紹介しますと、TSRは大きな進化があった部分になります。『The Matrix Awakens』に組み込まれているものは現在のTSRのベストな状態をあらわしています。
具体的なパフォーマンスの数字についてはいま手元にないのですが、Xbox Series Xでは、最小で1080Pの解像度でレンダリングしたものを、ネイティブに4K解像度でやった場合に近いクオリティで4K解像度にアップスケールしています。同様にSeries Sではもっと低い解像度でレンダリングしたものを1080Pにしています。確かこのあたりの話は今回の発表の後に行われる講演でも扱っているはずです。
いくつかの大きな改善はLumenでありました。特に反射の質ですね。以前のデモでは“Lumen in the Land of Nanite”にしても“Valley of the Ancient”にしてもほとんど屋外のシーンばかりで、(反射の強いツルツルした表面ではなく)光が拡散するような岩とかホコリまみれのブロックとかそういったものばかりでした。
それに対して『The Matrix Awakens』での都市環境ではガラス窓やらクルマやら反射の強い材質があちらこちらにあったので、反射の質や安定性を改善するという所に大きく注力することになりました。
その例としては、Lumenの一部として反射とグローバルイルミネーションの計算にハードウェアレイトレーシングのサポートを入れています。レイトレーシング機能がないハードウェアでの動作のためにソフトウェアレイトレーシングも入れていますが、ハードウェア側が対応している場合はそれらの点のクオリティを上げるのに使えます。
『The Matrix Awakens』以降もLumenの安定性と質の改善をさらにいくつか施しました。ですのでUE5.0ではあのデモでお見せしたものよりさらに少し磨かれたものになっています。改善はこれ以降も年を通じて行っていく予定です。
3. Naniteの制限や恩恵の例など
――Naniteで扱えるポリゴンメッシュの制限として、変形などが行えないのはこれまでと同様ですか?
ニックはい。UE5.0では依然として剛体メッシュ(Rigid Mesh)のみのサポートとなります。個別のメッシュは動かせますが、変形はできません。その点については研究調査を進めている部分で、解決予定の時期等はまだありませんが、確かに興味を持って取り組んでいる部分になります。
――同じく、Naniteで半透明などのマテリアルが使えなかったのも同様ですか?
ニックはい。Naniteは半透明などのマテリアルをサポートしていません。アルファマスクのマテリアルも同様です。それらが必要な場合、従来のパスで描画することはできます。シーンのそれ以外の要素はNaniteでレンダーするよう組み込んだシーンにするという感じですね。
アルファマスクのマテリアルのサポートはこちらも何ができるか研究を進めている部分です。一方、半透明などについては不透明よりも技術的なチャレンジが大きいので、サポートを検討するよりも少し遠い状態です。
――UE5に移行するにあたって開発者がワークフロー等で適応しなければいけないことなどはありますか?
ニックNaniteの面白いところのひとつとして、Naniteを特に意識していない既存のコンテンツでも、先程お話したような剛体メッシュなどのサポート範囲内でありさえすれば、Naniteに変換されると即座にパフォーマンス面の恩恵を得られるということがあります。
またNaniteはメッシュの従来のレンダリング手法と比較して(必要な分だけ)より細かくコンテンツをストリームするので、メモリー節約の機会もあります。ですのでもしワークフローを変えなくても、大きな改善が得られるでしょう。
でもそれに加えてさまざまな可能性があります。たとえば(密度の高い)ハイポリで作ったモデルをそのままエンジンに放り込める。ゲーム用のローポリモデルも用意するようなややこしい作業をしなくても済むわけです。
このようにNaniteで可能になりうる効率性はいろいろとありますが、先程言いましたように既存のコンテンツでも即座に改善を得られるというものになっています。
4. マトリックスデモを家庭用ゲーム機向けに出した理由
――『The Matrix Awakens』は家庭用ゲーム機で実行可能で、しかもプレイアブルな要素やビューワーモードなどのツールまでついてくるというすごく面白い試みでした。昔ながらの普通の技術デモとしてリリースすることもできたと思うのですが、なぜああいう形になったのでしょうか? “マーケティング”がそうさせたんですか?
ニックははは、僕らはマーケティングジョークをいっぱい入れてましたね(笑)。映像などを出すだけじゃなくて、プレイヤーの皆さんの手に体験できるもの、本当に動いているのを見られるものをお届けしたかったんです。
それともうひとつ「これがわたしたちが考える次世代のビデオゲームコンテンツだ」というビジョンを、開発者の皆さんだけでなくゲームコミュニティ全体に示したかったということもあります。これはわたしたちにとっても特別なものになりましたね。
――マトリックスデモでクルマをぶつけるとNaniteビューワーモードでの表示が黒く切り替わっていたんですが、あれは先程お伺いした変形と関係しているんでしょうか?
ニックはい。これも講演で扱われる内容だと思いますが、物理ベースの変形システムを作ってクルマに組み込んであるんです。開発者の方はCityサンプルをダウンロードして、どうやってChaosシステム(破壊表現を行う)を乗り物に適用して変形させているかを確認していただけます。
それであそこで何が起こっているかというと、通常時はクルマもNaniteで描画していてそれは効率も良いんですが、メッシュの変形が伴うとNaniteは描画できなくなるので、変形が起こる時に描画を切り替えているんです。(記者「Chaosシステムがオーバーライドしている?」)そう言ってもいいでしょう。
5. 今後の展望
――たとえば今後5年間とかで、どんなものがゲーム業界に出てくると思いますか?
ニックこれはちょっと大きな質問ですね。そうですね……もっとUE5を使ったゲームが出てくるのを期待しています。それともっと幅広いコンテンツですね。確立されたAAA(超大作級)のスタジオだけでなく、たくさんのインディースタジオや中規模のスタジオが新しくて興味深い体験を作り出しているのを目にしていますから。ですので、ゲーマーにとってこれからどんな体験が可能となるのか楽しみな、非常にエキサイティングな時代だと思います。
またUE5の新技術を活用することで、大規模で美しいオープンワールドを構築できる開発者が増え、楽しいマルチプレイヤーゲームを構築できる開発者が増え、そしてソーシャルな要素のあるゲームや体験を提供できるようになると考えています。これは私にとって本当にエキサイティングですね。