PlayStation 5 上でリアルタイムで実行される Unreal Engine 5 の Epic の公開は、今年の衝撃的なニュース イベントの 1 つであり、ゲームの未来についての初めての本当の「味」をもたらしました。ディテールの密度の高さという点でまさに世代の飛躍である UE5 は、LOD ポップインを完全に排除するとともに、高度なグローバル イルミネーション テクノロジーと組み合わせてジオメトリを処理するための根本的なアプローチを採用しています。最終結果は、これまでに見たものとはまったく異なりますが、新しいレンダラーの実際の性質は何でしょうか?この次世代の飛躍はどのように実現されるのでしょうか?また、欠点はあるのでしょうか?
テクノロジートレーラーに対するオンラインの反応を見ていると、いくつかの興味深い質問が投げかけられましたが、いくつかの不可解な反応もいくつかありました。隙間をすり抜けようとする主人公への執着は特に不可解でしたが、物事を明確にしておきますが、これは明らかに創造的な決定であり、より多くのデータを読み込むためにキャラクターの速度を低下させる手段ではありません。本当に単純です。一方で、モーダル 1440p ピクセル数によるダイナミックな解像度にも否定的な反応が見られました。トレーラーから 20 個の非圧縮グラブにアクセスできます。これらは従来のピクセル カウント手法を無視しています。全体的なプレゼンテーションがこれほど良く、これほど精細で、しっかりとした時間的安定性(つまり、フレームごとのちらつきやちらつきがない)を備えている場合、解像度はそれほど重要ではなくなります。これは、中世代コンソールの登場以来見られる傾向の継続です。リフレッシュします。ほぼ 2 年前に述べたように、次世代は「真の 4K」であるべきではなく、ゲームは前進しており、率直に言って、GPU リソースは別の場所に費やしたほうがよいのです。
ただし、いくつかの興味深いトピックが提起されました。 UE5 の「ピクセルごとに 1 つの三角形」アプローチは 30fps コンテンツで実証されたため、60fps コンテンツがどの程度優れているのかについては疑問があります。また、システムが動的ジオメトリや髪や木の葉などの透明部分でどのように動作するかについて、いくつかの興味深い点が挙げられています。メモリ管理も注目のトピックです。UE5 のストーリーの大きな部分は、オリジナルの完全忠実なアセットを変更せず、最適化もせずにゲーム内でどのように使用できるかということです。では、これはどのように処理されるのでしょうか?これにより、PlayStation 5 が優れている領域である、必要なストレージ ストリーミング帯域幅についてさらなる疑問が生じます。それでは、Lumen in the Land of Nanite の技術デモでは、5.5GB/秒という膨大な非圧縮メモリ帯域幅をどの程度活用しているのでしょうか?近いうちにさらに詳しく学べることを願っています。
Unreal Engine 5 のイノベーションの中核となるのは、技術デモで見られた前例のないディテールを提供するマイクロポリゴン レンダラである Nanite と呼ばれるシステムです。マイクロポリゴン エンジンの概念は新しいものではなく、映画 CGI で広く使用されています。出発点は同じですが、ゲームでの実行は異なります。モデルは、モデルごとに数百万のポリゴンを使用して同じ非常に高品質で作成されますが、ゲーム内で使用するために特注の法線マップを備えた低品質のモデルは作成されません。 Nanite では、高品質モデルの幾何学的な詳細がリアルタイムで拡大および縮小されます。ゲーム モデルが作成されていた以前の方法のように、ベイクアウトされたノーマル マップを使用してより詳細な詳細を埋める必要はありません。 Epic Games の主要なスタッフ メンバーは、いくつかの重要な質問に答えて、テクノロジーへの理解を深めてくれました。
「Nanite を使用すると、高解像度モデルから低解像度のゲーム アセットに法線マップをベイクする必要がなく、高解像度モデルをエンジンに直接インポートできます。アンリアル エンジンは仮想テクスチャリングをサポートしているため、次のことが可能になります。 GPU に過負荷をかけることなく、多くの 8K テクスチャを使用してモデルをテクスチャ化します。」 Epic の特別プロジェクトのアート ディレクターである Jerome Platteaux 氏は Digital Foundry に語った。彼によると、各アセットにはベース カラー用の 8K テクスチャ、金属性/粗さ用の別の 8K テクスチャ、そして法線マップ用の最後の 8K テクスチャがあるとのことです。ただし、これはより詳細な詳細を近似するために使用される従来の法線マップではなく、むしろ表面の詳細のためのタイリング テクスチャです。
「たとえば、寺院で見ることができる戦士の像は、8つの部分(頭、胴体、腕、足など)で構成されています。各部分には3つのテクスチャ(ベースの色、金属の質感/粗さ、質感)が設定されています。小さな傷の法線マップなど)。したがって、最終的には 8K テクスチャの 8 セットとなり、1 つの彫像だけで合計 24 の 8K テクスチャになります」と彼は付け加えました。
ディテールは画面サイズのピクセル量に関連付けられるため、現在のレンダリング システムで見られるようなハード カットオフ、つまり LOD の「ポップ」はなくなります。同様に、理想的には、2015 年の Star Wars バトルフロントのようなゲームの地上地形で見られるような、標準ディスプレイスメントで見られるような「沸騰した」外観があってはならない (これは今日でも美しく保たれていると言わざるを得ません)。そして最後に、水平方向の拡大と詳細の間引きを表現できるため、地面上の個々の岩石の品質をより自然な方法で増減させることができます。最終的に、このマイクロポリゴン手法は、モデルと法線マップの詳細レベルのバージョンを作成する必要がなくなり、時間、メモリ、さらにはさまざまなバージョンの描画呼び出しを節約できるため、アセットの作成に大きな違いをもたらします。ただし、非常に大きなコストがかかります。これを相殺するメモリ内のモデルは不明のままです。
また、Nanite の印象的な忠実度の鍵となるのは、微細なディテールがどのようにシャドウイングされるかということです。これは、ゲーム世界のすべてを根付かせるために不可欠であり、リアルなプレゼンテーションを実現するための鍵となります。これが、最新の Call of Duty Modern Warfare のようなゲームで細かいディテールがうまく機能する理由です。標準のシャドウ マップでは解像度が低すぎて微細なディテールをリアルに表現できず、それに比べてレイ トレーシングは非常に優れた仕事をします。 PlayStation 5 の UE5 デモでは、トライアングルベースのハードウェア アクセラレーション レイ トレーシングの代わりに、現世代のゲームで見られるような画面空間を利用して細部をカバーし、仮想化されたシャドウ マップと組み合わせます。
「バイアスやセルフシャドウイングアーティファクトを避けるために、サンプルポイントをサーフェスから離すための非常に短いスクリーンスペースのトレースが必要です」と Brian Karis 氏は説明します。 「これらは一般に「ピーター パニング」と呼ばれるもので、影が遠ざけられているため、影が術者につながっていないように見えます。また、シャドウ マップが十分に偏っておらず、表面が部分的に影になっている反対方向の影のニキビもあります。短い画面スペースのトレースを他のいくつかのトリックと組み合わせて使用するフィルタリング方法を使用して、両方を回避します。
「実際、ここでの核となる方法、そしてシャドウの忠実度がこれほど飛躍的に向上する理由は、仮想シャドウ マップです。これは基本的には仮想テクスチャですが、シャドウ マップ用です。Nanite は、以前は不可能だった多くのことを可能にします。仮想化されたシャドウ マップに非常に効率的にレンダリングされます。テクセルがピクセル サイズになるように、各ピクセルの仮想シャドウ マップの解像度を選択します。したがって、ピクセルあたりおよそ 1 テクセルとなり、非常に鮮明なシャドウになります。これにより、実質的に 16K のシャドウ マップが得られます。デモのすべてのライトに対して、以前は最大でも 2K を使用していました。高解像度は素晴らしいですが、物理的に妥当なソフト シャドウが必要なので、レイトレース シャドウのノイズ除去に関する以前の作業の一部を拡張して、シャドウ マップ シャドウをフィルタリングし、その素敵な半影を私たちにください。」
また、ジオメトリが正確にどのように処理されるか、Nanite が完全にソフトウェア ベースの生のコンピューティング アプローチを使用しているか (これは、完全な DirectX 12 Ultimate で認定されていない PC GPU を含むすべてのシステムでうまく機能します)、あるいは Epic が使用しているかどうかについても非常に興味がありました。ソニーが PlayStation 5 向けにメッシュ シェーダー、またはプリミティブ シェーダーと表現しているパワーを利用します。その答えは興味深いものです。
「三角形の大部分は、私たちが活用できる利点を最大限に活かすために特別に設計された、超最適化されたコンピューティング シェーダーを使用してソフトウェアでラスタライズされています」と Brian Karis 氏は説明します。 「その結果、この特定のタスクではハードウェア ラスタライザを無視することができました。ソフトウェア ラスタライザは、Nanite の機能を実現するためのコア コンポーネントです。ただし、すべてのケースでハードウェア ラスタライザに勝つことはできません。 「そのため、それがより高速なパスであると判断した場合には、ハードウェアを使用します。PlayStation 5 では、そのパスにプリミティブ シェーダーを使用します。これは、頂点シェーダーを使用した以前の古いパイプラインを使用するよりも大幅に高速です。」
Unreal Engine 5 テクノロジー デモで初公開されるもう 1 つの基本テクノロジーは、Lumen です。これは、レンダリングの聖杯の 1 つであるリアルタイムのダイナミック グローバル イルミネーションに対する Epic の答えです。 Lumen は本質的に、バウンス ライティングの非三角形レイ トレーシング ベースのバージョンであり、基本的に最初のライティングのヒット後にシーンの周囲に光を分配します。そのため、デモでは、太陽が岩のような表面に当たり、岩から反射する光がその色の影響を受けて、どのように日陰を形成すべきかを示します。このデモでは、シーンの照明をリアルタイムで根本的に変化させます。ビデオには、エフェクトのオンとオフを示す短いセクションもあります。
ほとんどのゲームは、オフラインで生成され、基本的にテクスチャを介してシーンに「焼き付けられる」ライト マップと呼ばれるシステムを通じて事前に計算することで、グローバル イルミネーションを近似します。これにより、シーンにはグローバル イルミネーションが含まれますが、ライトは移動できず、ライティングとその影響を受けるオブジェクトは完全に静的になります。照明は基本的に、ゲーム シーン内のオブジェクトの表面に取り付けられます。これに加えて、このライトマップは拡散ライティングにのみ影響するため、鏡面ライティング (金属、水、その他の光沢のあるマテリアルに見られるような反射) は、キューブ マップまたはスクリーン空間反射を通じて、別の方法で実行する必要があります。
4A Games の Metro Exodus は、動的なグローバル イルミネーションの生成に使用されるハードウェア アクセラレーション レイ トレーシングを使用して、これに対する潜在的な解決策を提供していますが、多くの RT ソリューションの場合と同様、コストがかなりかかります。 Lumen は、最終イメージのトレース技術の組み合わせを使用する、オフライン ライト マップ グローバル イルミネーションに代わる「より軽量な」リアルタイムの代替手段です。 Lumen は太陽光に対して間接照明の複数の反射を提供し、デモでは同じ効果が主人公の懐中電灯からも見られます。
「Lumen はレイ トレーシングを使用して間接照明を解決しますが、トライアングル レイ トレーシングは使用しません」と Epic のグラフィックス テクニカル ディレクターである Daniel Wright 氏は説明します。 「Lumen は、符号付き距離フィールド、ボクセル、高さフィールドで構成されるシーン表現に対して光線を追跡します。その結果、特別な光線追跡ハードウェアは必要ありません。」
完全に動的なリアルタイム GI を実現するために、Lumen には特定の階層があります。 「Lumen は、さまざまな技術を組み合わせて光線を効率的に追跡します」と Wright 氏は続けます。 「スクリーン空間トレースは微細な詳細を処理し、メッシュ符号付き距離フィールド トレースは中規模の光伝達を処理し、ボクセル トレースは大規模な光伝達を処理します。」
Lumen はさまざまなテクニックを組み合わせて使用します。大きなオブジェクトやサーフェスからの反射光をカバーするために、三角形をトレースするのではなく、代わりにシーンのジオメトリを箱状に表現したボクセルを使用します。中型のオブジェクトの場合、Lumen は符号付き距離フィールドに対してトレースします。これは、シーン ジオメトリの別のわずかに簡略化されたバージョンとして最も適切に説明されます。そして最後に、Xbox Series X の Gears of War 5 でデモされた画面空間のグローバル イルミネーションとよく似た、シーンの最小の詳細が画面空間でトレースされます。オブジェクト サイズのさまざまな詳細レベルを利用し、画面を利用することによって、最も複雑な細部の空間情報を取得するため、ハードウェアのトライアングル レイ トレーシングと比較して、Lumen は GPU 時間を節約します。
パフォーマンスを維持するためのもう 1 つの重要なテクニックは、時間的累積を使用することです。これは、光の反射の動きのマッピングがフレームからフレームへと時間の経過とともに発生します。たとえば、デモビデオの冒頭でライトが動き回るのですが、注意深く観察すると、バウンスされたライティング自体が直接ライティングと比較して部分的にずらした速度で移動していることがわかります。開発者らは、サーフェス キャッシュを彷彿とさせる「無限バウンス」について言及しています。これは、一種のフィードバック ループを使用して、時間の経過とともにジオメトリに光を保存する方法です。これにより、拡散ライティングの多くの反射が可能になりますが、ライティングが急速に移動すると、若干の遅延が生じる可能性があります。
Lumen は魅力的で、結果の品質がそれ自体を物語っています。Nanite と同様に、技術デモでのこれらのテクノロジーのプレゼンテーションで気に入っている点は、その信頼性です。インパクトは圧倒的ですが、層を剥がし始めると、Epic がどのようにしてこのレベルの忠実度を達成しているかが少しずつ明らかになり始めます。同社は成果を達成する方法について透明性を保っており、エンジンを公開してリアルタイム レンダリングに直接取り組み(「エンジン内」の不正行為はありません)、パフォーマンスと制限についてオープンにしてきました。基本的に、これはゲーム業界やその他の業界に重要なツールを提供することを主眼とする企業にとって最良のアプローチです。
Unreal Engine 自体の性質上、隠れる場所はありません。エンジンとそのソースは完全に利用可能です。新しいテクノロジーには、何らかの固有の制限があるのでしょうか?その場合は、プレビュー フィードバックを通じて、それより早くではないにしても、いつリリースされるかがわかりますが、Epic が提供しなかったら驚くでしょう。 Unreal Engine の基本的な性質を思い出してください。Unreal Engine は、開発者が事実上あらゆる種類のゲームを提供できるように設計された多用途のツールボックスです。同様のレベルの柔軟性がなければ、次世代レンダラーを作成することは、アプリケーションが制限されている場合、Epic にとって自滅することになります。そうは言っても、現在のモデリング技術から Megascan に移行するという概念は、すでに指摘されているように、ゲームの作成方法に重大な影響を与える地殻変動のように聞こえます。
もちろん、新しいコンソールのリリースまではまだ約 6 か月ありますが、アンリアル エンジン 5 自体は 2021 年初頭まで一般公開される予定ではありません。後者の点は、まだ多くのエンジニアリング作業が残っていることを示唆しています。近い将来、しかし少なくとも短期的には、ルーメン、ナナイト、技術デモの作成に関するさらなる詳細が間もなく発表されるだろうとブライアン・カリスは述べており、私たちはさらなる情報を知るのが待ちきれません。