4 年間で、私たちは PC 所有者が Quake 2 のパス トレース バージョンをプレイできる状態から、最も要求の厳しいトリプル A ゲームの 1 つである Cyberpunk 2077 に適用されるのと同じテクニックをプレイできるようになりました。現在でも、Quake 2 RTX は実行が難しいソフトウェアであり続けていますが、RTX 4070 からトップエンドの RTX 4090 に至るまで、60 フレーム/秒以上で最先端のビジュアルを提供できます。問題は、どのようにして?
私たちはソフトウェアとハードウェアの両方の観点からさまざまな技術革新を検討しているため、ここで単純な答えはありません。問題の核心に迫り始めることができるのは後者の点です。 Quake 2 RTX は、市場で最も強力な GPU が Nvidia GeForce RTX 2080 Ti だった 2019 年 6 月に発売されました。約 1080p でゲームをかなりうまく実行でき、余裕を持って 60fps が可能でした。ただし、解像度を 4K などのより高い標準に上げると、フレームレートは 10 代後半から 20 代前半で動作します。
4 年後、最新の GPU がこれらの RT 計算を実行しています。RTX 4090 は同じワークロードを約 4 倍の速度で実行しています。ただし、レイ トレーシング ハードウェアのパフォーマンスがどのように劇的に向上したかを説明する前に、これは次のことであることを強調しておきます。話のほんの一部。開発者はソフトウェア面でも効率を高めるために懸命に取り組んでいます。
ただし、ストーリーはどこかから始まらなければなりません。最新のグラフィックス ハードウェアの進歩には目覚ましいものがあります。 RTX 4090 の RTX 2080 Ti と比較した 4 倍のパフォーマンス向上は、ハードウェア内の多くの要因によるものです。もちろんシェーダー コアの増加と動作周波数の向上ですが、その一部はアーキテクチャによるものでもあります。たとえば、新しい Nvidia アーキテクチャはそれぞれ、RT コアの三角形交差テストのスループットを 2 倍にしました。したがって、30 シリーズ カードの Ampere アーキテクチャは、20 シリーズ Turing 製品と同じ時間で 2 倍の量の三角形をテストできます。
実際に、Quake 2 RTX を実行している RTX 3070 と RTX 2080 Ti を比較すると、これがわかります。ほとんどのラスタライゼーション タイトル、さらにはハイブリッド レイ トレーシング ワークロードでは、RTX 3070 と RTX 2080 Ti が互角に動作するか、RTX 2080 Ti がリードする可能性があります。ただし、純粋なレイ トレーシング ワークロードでは、RTX 3070 のパフォーマンスが大幅に優れています。 RTX 4090 に搭載された新しい Ada Lovelace アーキテクチャにより、三角形交差テストがアンペアのさらに 2 倍増加しました。
最近の GPU に見られるもう 1 つの技術的なアーキテクチャ上の利点は、大量の L2 キャッシュです。これはすべての GPU ベンダーに共通する傾向ですが、特に Intel の Arc アーキテクチャと Nvidia の Ada Lovelace アーキテクチャは、同様の性能を備えた他の GPU やその最新の前世代と比べて、L2 キャッシュの量が不釣り合いに多くなっています。たとえば、RTX 3090 には 6MB の L2 キャッシュがあり、RTX 4090 には 72MB があります。 Intel Arc A770 には 16 MB のキャッシュがありますが、Ampere または RDNA 2 ファミリの主な競合製品のキャッシュは大幅に少なくなっています。
新しい RTX 40 シリーズ カードには、Shader Execution Reordering (SER) も含まれています。高品質のレイ トレーシングまたはパス トレーシングを使用するゲームでは、ゲーム世界のすべてのマテリアルに対して非常に多様なシェーダーが存在する可能性があります。たとえば、サイバーパンク 2077 では、金属、ガラス、クリアコートペイント、ダッシュボード、革シートなど、車にさまざまな素材を使用できます。リアルなレンダリングでは、光が反射したときにこれらすべてのマテリアルが尊重され、正しくシェーディングされることが非常に重要です。
問題は、レイがシーン内でかなりランダムに跳ね返り、これらのシェーダに無計画な方法でアクセスすることで、その際に GPU ユニットの使用率が低下し、パフォーマンスが大幅に低下する可能性があります。 SER は、異種のシェーダーをまとめてバンドルすることでこれに対抗し、GPU 上でアクセスされるデータの散在性を防ぎます。サイバーパンク 2077 ではこれが使用されていると伝えられていますが、L2 キャッシュの違いと同様に、これらはベンチマーク目的で無効にしたり再度有効にしたりできる機能ではないため、現実世界のパフォーマンスへの影響を把握するのは困難です。
過去 4 年間でソフトウェア面でも劇的な改善が見られ、効率が大幅に向上しました。基本的に、開発者は、同じ量の光線を発射しながら、同じ量のパフォーマンスではるかに優れた視覚効果を得る方法を開発しました。これらの重要な進歩の 1 つは ReStir によってもたらされます。 ReStir は時空間リザーバー リサンプリングの略で、多数の異なる光源からの光線を追跡する方法という問題に答えようとします。これは、サイバーパンク 2077 のネオンに満ちた世界で非常に多くの光源を使用できる場合に重要です。レイ トレーシングでは、正確なライティング結果を得るために、非常にノイズの多い方法でサンプリングを行っています。光がどこにあるのか、どこにないのかを把握するためにシーンにレイを送信することになりますが、結果は信じられないほどノイズが多くなる可能性があるため、結果を適切に見せるには非常に多くのレイが必要になります。
だからこそ、サイバーパンクで照明をトレースするのは非常に難しいのです。どこにでも照明があり、角を曲がると、突然、まったく予測できない多数の照明が現れる可能性があります。従来のパス トレーサーは非常に多くのレイを必要とするため、見栄えが良くなるまでにリアルタイムでパフォーマンスを発揮できなくなります。これが、Quake 2 でライティングをトレースするのが比較的簡単である理由です。特定のシーンには光源がほとんどなく、レベルは小さく、新しいライトが登場したときにライトを簡単に見つけてトレースできるように事前にパッケージ化されています。画面に表示され、プレイヤーが見ることができるピクセルに影響を与え始めます。
Quake 2 RTX で光線をライトに追跡する方法は、Cyberpunk 2077 のようなもので優れたビジュアルとパフォーマンスを実現するにはまったく耐えられません。その方法は現代のゲームでは時代遅れであるため、2018 年や 2019 年には存在しなかった新しい方法を登場させる必要がありました。まず第一に、サイバーパンク 2077 を可能にすることです。ここで、ReStir またはそのブランド形式である RTXDI が登場します。このアルゴリズムは、過去のフレームで発射されたレイと現在のフレームで発射されたレイを賢く再利用して、重要なローカル光源のノイズのギャップを正確に埋めます。 ReStir を使用すると、最小限の量の光線をトレースでき、非常に多くの光源から比較的ノイズのない照明と影が返されます。ご想像のとおり、ReStir が提供する多くのライトをトレースするこの方法がなければ、Cyberpunk 2077 RT Overdrive は現在の形で存在することはできませんでした。
レイ トレーシング アルゴリズムの最適化を超えて、画像再構成においても大きな進歩がありました。 Quake 2 RTX が発売された 2019 年当時、DLSS 2 は存在すらしておらず、この技術の最初の反復ではその任務を達成できませんでした。最近では、再構成技術が現代の PC ゲームの柱として確立されており、パス トレースのような GPU 負荷の高いエクスペリエンスを体験する方法が変わりました。たとえば、サイバーパンク 2077 を最大限に活用する RTX 4090 では、健全な 60fps のベースラインを探している場合、解像度は約 1080p に制限されます。しかし、機械学習の進歩により、1080p 画像を取得し、パフォーマンスを犠牲にしてリアルタイムで処理し、最大 4 倍のピクセル量を再構築し、画質を大幅に向上させることができるようになりました。
これに加えて、機械学習を利用したフレーム生成により、プレゼンテーションをさらに強化できるようになりました。 2019 年、フレーム生成はゲームにとってまったく前代未聞のことであり、このテクノロジーの最後の説得力のあるデモは、ほぼ 10 年前に LucasArts が The Force Unleashed 2 でフレーム生成のバージョンをデモしたときでした。2023 年には、実際に実行可能なフレーム生成テクノロジーが存在し、これで、以前に作成した 4K DLSS パフォーマンス モードの画像を取得し、そのフレーム レートを増幅して知覚の流動性を高めることができます。フレームの生成と画像の再構成により、重いレイトレーシングのエクスペリエンスは、おそらくわずか 4 年前のものよりもはるかに流動的で詳細なものになりました。
つまり、サイバーパンク 2077 RT オーバードライブは、ハードウェアの進歩、レイ トレーシング アルゴリズムの進歩、画像処理の進歩など、多くの個別の要素が集まったものであり、そのすべてが驚くほど早く起こりました。ただし、ここが旅の終点ではありません。 RT オーバードライブには、ビジュアル面とパフォーマンス面でまだ対処すべき制限があります。
最初の制限の 1 つは、前方にレンダリングされる要素 (たとえば、ガラスなどの透明なもの) の処理方法です。これらの要素は、これらのマテリアルが不透明なワールド ジオメトリのようにレイ トレーシングによってまだ完全に処理されていないため、私がサイバーパンク 2077 を「完全にパス トレースされた」ではなく「ほぼパス トレースされた」と表現する理由です。これはまだ研究の余地のある分野ですが、何が起こるかについては、他のタイトルですでにヒントが示されています。
Quake 2 RTX には非常に説得力のある厚いガラスのレンダリングがあり、Unreal Engine 4 タイトルの Chernobylite にも見栄えの良いレイトレースされたガラスの屈折とシェーディングがありました。これは、将来的に Cyberpunk RT Overdrive にさらなるパッチが適用されることで改善される可能性のある領域の 1 つになると思います…はい、これは完全に開発中の「テクノロジー プレビュー」のままです。
もう 1 つの制限は、不透明なジオメトリで発生するパス トレースされたバウンスの量にあります。現時点では 2 つのバウンスであり、知覚的なリアリズムの観点からは十分ですが、より多くのバウンスが役立つと想像できる潜在的な照明条件があります。プロジェクトのエンジニアから聞いた話によると、サイバーパンク 2077 はニューラル ラディアンス キャッシュを使用するように更新される可能性があると思います。それをカバーする 2021 年のプレゼンテーションに基づくと、他の方法の代わりにニューラル ラディアンス キャッシュを使用すると、サイバーパンク 2077 にいくつかの興味深い利点がもたらされるでしょう。
1 つは、キャッシュに鏡面反射光情報が含まれるため、他の技術では処理できないマルチバウンス反射をキャッシュで処理できること、そしてサイバーパンクの世界における合成マテリアルと金属の量を考慮すると、これは大きな利点となる可能性があります。また、拡散照明情報も提供されるため、より極端な影の状態をノイズや遅延を少なくしてゲーム内で正確に表現できるようになります。現時点では、主に間接照明が当たっているエリアではノイズが発生する可能性があります。ニューラル放射キャッシュに照明情報をキャッシュすると、この問題を完全に軽減できる可能性があります。
Cyberpunk 2077 オーバードライブの最後の制限はパフォーマンスにあります。AAA ゲームではほぼ完全にパス トレースされたライティングであるため、これは当然のことですが、ここではまだソフトウェア側に改善の余地があると思います。たとえば、現時点ではゲームは OMM (不透明マイクロマップ) を利用していません。これは、Ada Lovelace GPU で読み取ることができるアセット形式で、アルファ テスト済みのジオメトリ (植生など) をトレースするコストを高速化します。
現在、ゲーム内の葉の多いエリアに行くと、標準的な不透明なジオメトリのエリアよりも葉がいかに重いかがわかるため、パフォーマンスの向上が期待できます。しかし、それ以上のことはわかりません。しかし、ここで私が興味深いと思ったのは、RTX 4090 上のネイティブ 4K でのゲームが、Quake 2 RTX を実行している RTX 2080 Ti のパフォーマンスと同様のフレーム レートでどのように実行されるかということです。
ハードウェアとソフトウェアの進化の傾向が続けば、次世代のコンソール ハードウェアが登場するまでに、今後数年間にわたってその可能性は興味深いものになります。現在の RTX 4090 のパフォーマンスはローエンドの部分にまで絞り込まれ、ハイエンドの GPU はさらに前進できるはずです。現在でも、コンソールと PC の機能には明確な違いが見られますが、開発者の意志と Nvidia の継続的な RT の推進次第では、この品質のビジュアルがより多くのゲームに導入されるようになるはずです。それまでの間、RT Overdrive と、この技術を今日の 20 シリーズおよび 30 シリーズのグラフィックス ハードウェアで動作させるための推奨事項をチェックする価値があることは言うまでもありません。