2018年にNvidiaのTuringファミリーのGPUが発売された後、ゲームの世界では、「レイトレーシング」として知られる機能についての議論が飛躍的に増加しました。 Nvidiaの当時の新しい「RTX」シリーズのグラフィックスカードは、ゲームで「リアルタイムレイトレーシング」と呼ばれるものをサポートしました。ほとんどの人は、この新機能が何であるか、そしてなぜそれがNvidiaによってそれほど強くプッシュされたのかについて確信が持てませんでしたが、同時に興奮し、テクノロジーに興味を持っていました。 Nvidiaによると、レイトレーシングは非常に大きなポイントであったため、発売する製品の名前にレイトレーシングを正しく含める必要があると考えました。新しいGeForce「RTX」シリーズのカードは、Nvidiaが通常リリースする60、70、80、-80Ti SKUなどの上位SKUに関しては、古い「GTX」の種類に取って代わりました。
Nvidia GeForce RTX 3080は、レイトレーシングをサポートする最速のグラフィックスカードの1つです–画像:Nvidia
NvidiaのRTX2000シリーズのグラフィックスカードは、ゲームでレイトレーシングのサポートを可能にするいくつかのハードウェアの変更をもたらしました。新しいTuringベースのグラフィックカードには、このプロセス専用のRTコアと呼ばれる特別なコアが搭載されていました。 RTコアの目的は、ゲームでリアルタイムのレイトレーシングを可能にするために必要なすべてのグラフィカル計算を具体的に処理することでした。 Nvidiaはまた、カードの生のパワーを高めるために追加のCUDAコアをカードに追加し、Tensorコアと呼ばれる新しいコアのセットも追加しました。これらのコアは、ディープラーニングスーパーサンプリングとして知られる新しい形式のアップスケーリング手法など、ディープラーニングおよびAIアプリケーションを支援することを目的としていました。ディープラーニングスーパーサンプリングまたはDLSSについては、すでに詳細に説明しています。 この記事 、AIを利用したアップスケーリング手法について詳しく知ることができます。
レイトレーシングは新しいものではありません
一見、レイトレーシングはNvidiaによって開拓された新しいテクノロジーのように見えるかもしれませんが、実際にはそれとはかけ離れています。はい、Nvidiaはゲームでリアルタイムレイトレーシングのサポートを実装した最初の会社でしたが、それはレイトレーシングがRTXシリーズの前に存在しなかったことを意味するものではありません。 CGI効果を備えた最近の映画を見たことがあれば、おそらく何年も知らずに楽しんでいるでしょう。
レイトレーシングはすでに映画のような他の分野で使用されています–画像:Nvidia
映画での実装は確かにゲームバージョンとは少し異なり、はるかに集中的です。大きな予算の作品には、それらのシーンのレンダリングに多額のお金と時間を費やすことができるという贅沢があります。人気のあるアニメーション映画は、約1000台のスーパーコンピューターを使用して、1か月の間にレイトレーシング効果で映画全体をレンダリングしたと報告されています。もちろん、このような大規模なレンダリングプロセスは、一部の更新されたビジュアルで一部のゲームをプレイしようとしている平均的なゲーマーにとっては実現不可能または不可能であるため、最新のゲームに存在するレイトレーシングバージョンはアプリケーションがかなり異なります。それでも、レイトレーシングはゲーム以外の制作の多くの領域に存在する機能であり、映画は最も有名なものの1つです。
Blenderなどのグラフィックを多用するシーンで作業するために専門家が使用する生産性ソフトウェアもレイトレーシング機能をサポートしています。これらのコンピュータグラフィックスおよびレンダリングソフトウェアは、さまざまなレベルのレイトレーシングアプリケーションを使用して、静止画レンダリングおよび3Dアニメーションで写実的なビジュアルを生成します。
ラスタライズとは何ですか?
では、なぜNvidiaは、このような複雑なプロセスを従来のゲームに実装する必要があると考えたのでしょうか。ゲームのレイトレーシングのプロセスに違いがあり、ワークロードに合わせて最適化されていますか?レイトレーシングの背後にあるメカニズムを理解するには、まず、ゲームが従来からレンダリングされるメカニズムを理解する必要があります。これは、レイトレーシングがグラフィックの忠実度の向上と大きな飛躍と見なされる理由を理解するのに役立ちます。
現在レンダリングに使用されている手法は、「ラスタライズ」として知られています。この手法では、ゲームコードがGPUにポリゴンを使用して3Dシーンを描画するように指示します。これらの2D形状(主に三角形)は、画面に表示される視覚要素のほとんどを構成します。シーンが描画された後、シーンは個々のピクセルに変換または「ラスタライズ」され、専用のシェーダーによって処理されます。シェーダーは、ピクセルごとに色、テクスチャ、および照明効果を追加して、完全にレンダリングされたフレームを生成します。ゲームで30FPSまたは60FPSのビジュアルを作成するには、この手法を1秒間に約30〜60回繰り返す必要があります。
ラスタライズのメカニズムの詳細–画像:Medium.com
ラスタライズの制限
ラスタライズはかなり前からゲームのデフォルトのレンダリングモードでしたが、ラスタライズの背後にある固有のプロセスにはいくつかの制限があります。ラスタライズの主な問題は、この手法では、シーン内の光がどのように移動し、シーンの他の要素と相互作用するかを正確に追跡するのが難しいことです。ラスタライズされたレンダリングは、特定のシーンの照明効果と全体的な照明に関しては、レイトレースレンダリングと同じ結果を生成しません。ラスタライズされたレンダリングは、照明に関して多少不正確なビジュアルを生成することもあり、特定のゲームへの没入感を実際に損なう可能性があります。これが、レイトレーシングが、特に照明に関して、グラフィックの忠実度に関して優れたレンダリング形式と見なされる理由です。
レイトレーシングとは正確には何ですか?
ラスタライズされたレンダリングの従来の形式について説明したので、次に、最新のゲームでのリアルタイムレイトレーシングの新しいアプリケーションについて説明します。レイトレーシングは、仮想光に基づいて画像を作成し、その光源が仮想シーン内のすべてのオブジェクトとどのように相互作用するかを示すレンダリング手法です。レイトレーシングは、光とシーン内のオブジェクトとの相互作用を利用してリアリズムの感覚を与える、はるかにリアルなシーンの描写を作成できます。簡単に言うと、レイトレーシングは、ビデオゲームで実際の生活と同じように光を動作させる手法です。
レイトレーシングは、ゲームのビジュアルを完全にオーバーホールすることを約束します–画像:Nvidia
レイトレーシングの背後にあるメカニズム
ゲームのレイトレーシングの背後にあるメカニズムは、映画などの他の業界ですでに見られる他の形式のレイトレーシングとは本質的に異なります。各光源からの何百万もの光線を追跡する代わりに、消費者向けの光線追跡は、ユーザーの視点を表すカメラから1つのピクセルを通り、その背後にあるオブジェクトまでのパスを追跡することで、計算負荷を軽減します。ピクセル、そして最後に問題のシーンの光源に戻ります。レイトレーシングのこの手法は、シーン内の光と相互作用していたオブジェクトによって決定されるように、光の吸収、反射、屈折、拡散などの複数の効果を生成することもできます。レイトレーシングアルゴリズムでは、結果の光線を考慮に入れることもできるため、反射効果や影が正確に表示されます。
レイトレーシングでは、ゲーム内で光が実際の動作と同じように動作します–画像:Nvidia
レイトレーシングのさまざまな形式
レイトレーシングのすべての実装が同じというわけではありません。レイトレーシングをサポートするさまざまなゲームは、それぞれ多少異なる方法で機能を実装します。これは、ゲームの開発者がゲーム内のレイトレーシングの複雑さを増減して、ゲームがパフォーマンスと視覚的品質の完璧なバランスを実現できるようにすることです。 2020年の時点で、レイトレーシングをサポートするほとんどのゲームは、レイトレーシング自体を使用してシーン全体をレンダリングするのではなく、通常、シーンの1つの側面に対してのみレイトレーシングを使用します。可能ですが、フルシーンレイトレーシングの計算コストは他のアプローチと比較して天文学的なものであるため、少なくとも現時点では努力する価値はありません。これを書いている時点で、現在ゲームで使用されているレイトレーシングのさまざまな実装は次のとおりです。
- 影: 最も単純で最も集中度の低いレイトレーシングの実装は、間違いなくシャドウに関連しています。ここでは、レイトレーシングを使用して、光源からの光の原点とオブジェクト自体の位置に基づいて、シーン内のシャドウを完全にレンダリングします。この手法は、「シャドウオブザトゥームレイダー」で最もよく使用され、シャドウを生成しているオブジェクトの周囲の環境の変化に対応する、より詳細なシャドウマップを生成します。最も注目すべきは、光源の動きと角度によって、実際に観察されるのと同じ結果の影の変化が発生する可能性があることです。
- 反射: レイトレーシングを使用してレンダリングするには、リフレクションの計算量がかなり多くなりますが、レイトレーシングされたリフレクションは、最近のゲームでは驚異的に見え、レイトレーシングを使用して得られる最も注目すべきグラフィックの改善点です。反射は、シーン内の光源を使用して、ガラスや水などの反射オブジェクトからの反射を正確にレンダリングします。レイトレーシング反射を使用する最も人気のあるゲームの1つは、「コントロール」です。
- アンビエントオクルージョン: これも影に関連しており、多かれ少なかれ同じ基本的なプロセスに結びついています。アンビエントオクルージョンは、レイトレーシングを使用して、シーン内のオブジェクトの位置と配置に基づいて影の角度と強度を予測します。アンビエントオクルージョンを正しく実行すると、ゲームに驚くべきディテールとリアリズムを加えることができます。
- グローバルイルミネーション: おそらく、現代のゲームで最も計算量の多いレイトレーシング実装の形式であるグローバルイルミネーションは、レイトレーシングを使用して世界の照明を正確に表現します。これにより、オンにしたときにはるかにリアルな照明感が得られますが、処理されるデータの量が非常に多いため、パフォーマンスにも大きな影響があります。 「メトロエクソダス」はレイトレーシングを使用して、はるかにリアルな形のグローバルイルミネーションを提供します。
- フルパストレーシング: 最後に、完全にパストレースされたゲームもいくつか登場しています。これは、基本的にすべてがレイトレーシングされていることを意味します。確かに、これらのゲームは、大企業のAAAタイトルであった他のゲームよりもいくらかシンプルで小さいですが、これは印象的でないことを意味するものではありません。実際、フルパストレーシングを備えたこれらのゲームは、他のすべてのレイトレーシング実装よりも見栄えが良いと主張する人もいるかもしれません。 「MinecraftRTX」と「QuakeRTX」は、執筆時点で完全にパストレースされているタイトルの2つです。
Ray Traced Reflectionsは、ゲームにおけるレイトレーシングの最も目を楽しませてくれるアプリケーションです–画像:Nvidia
レイトレーシングには何が必要ですか?
前に述べたように、レイトレーシングは非常に計算量の多いタスクであるため、うまく機能するには明らかにハイエンドのハードウェアが必要です。これを書いている時点で、ハードウェアアクセラレーションによるレイトレーシングをサポートするAMDとNvidiaの両方のグラフィックカードがいくつかあります。ソニーとマイクロソフトのコンソールでさえ、この機能をサポートしています。これにより、サポートされているハードウェアのリストが少し拡張されます。
- Nvidia GeForce RTX2000シリーズ
- Nvidia GeForce RTX3000シリーズ
- AMD Radeon RX6000シリーズ
- MicrosoftXboxシリーズX
- ソニープレイステーション5
AMDがレイトレーシングをNvidiaとは少し異なる方法で処理する場合、レイトレーシングにAMDカードを使用しているときに観察されるパフォーマンスの低下がいくらか大きくなることに注意してください。また、ディープラーニングスーパーサンプリングを使用してパフォーマンスの向上を体験したい場合、その機能はNvidiaのRTXカードでのみ使用できます。 AMDはRX6000シリーズカードのDLSSに似た機能に取り組んでいると思われますが、現在、執筆時点ではまだ開発中です。
Nvidiaはまた、RTXグラフィックスカードの相対的なレイトレーシング機能についてのアイデアをユーザーに提供するために、「ギガレイ」という用語を作り出しました。 Nvidiaによると、ビデオゲーム環境の一般的な部屋を完全に照らすために理想的に必要な仮想光の最小量は、1秒あたり5ギガ光線です。 GeForce RTX 2070は毎秒5ギガレイを提供し、RTX2080は毎秒8ギガレイを提供します。 RTX 2080Tiは、なんと10ギガレイ/秒を提供します。ただし、これはやや恣意的な単位であるため、一般的に相対的なパフォーマンスの期待値を示すためにのみ使用する必要があります。
パフォーマンスの低下とDLSS
これまでに明らかなように、レイトレーシングの最大の欠点は、プロセスで実行する必要のある大量の専用計算によるパフォーマンスへの影響です。一部のゲームでは、パフォーマンスヒットが非常に大きいため、ゲームをプレイ可能とは見なされなくなったフレームレートにすることができます。リフレクション、グローバルイルミネーション、フルパストレーシングなど、レイトレーシングのより複雑な実装を使用するゲームでは、パフォーマンスへの影響はさらに大きくなります。
もちろん、Nvidiaはこのパフォーマンスペナルティの状況を考慮し、Deep Learning SuperSamplingとして知られる新しい補正手法も開発しました。 DLSSと呼ばれるこの手法は、2018年にNvidiaのRTX2000シリーズと一緒にリリースされました。DLSSについてはすでに詳しく説明しています。 この記事 ただし、このテクノロジーの本質は、画像を低解像度でレンダリングし、出力解像度に一致するように画像をスマートかつ系統的にアップスケールして、ネイティブレンダリングよりもはるかに優れたパフォーマンスを提供することです。 DLSSは、レイトレーシングのパフォーマンス低下に対する優れた補正メカニズムですが、レイトレーシングなしで使用して、さらに高いフレームレートとはるかに優れたエクスペリエンスを提供することもできます。
DLSSをオンにすると、制御が大幅に向上–画像:Nvidia
DLSSの最大の利点は、ディープラーニングとAIを使用して画像をアップスケールするため、ネイティブ画像とアップスケール画像の間に視覚的な明瞭さの違いがほとんどないことです。 Nvidiaは、RTXシリーズのカードのTensorコアを使用してDLSSプロセスを高速化し、レンダリングされているゲームのペースでこのアップスケーリング計算を実行できるようにします。これは本当にエキサイティングなテクノロジーであり、現在よりもさらに発展し、より良くなることを望んでいます。
レイトレーシングの未来
ゲームでのレイトレーシングはまだ始まったばかりであり、ここにとどまることが確実に言えます。 AMDはちょうど彼らの RX6000シリーズでフルリアルタイムレイトレーシングをサポートするカードの最初のラインナップ 、およびPlayStation5とXboxSeriesXもレイトレーシングをサポートしています。克服する必要のある現在のハードルには、パフォーマンスの低下とそれをサポートするゲームの数の少なさが含まれます。執筆時点でレイトレーシングをサポートしている現在のゲームは次のとおりです。
- 悪の中で
- 戦場V
- ブライトメモリ
- コールオブデューティ:モダンウォーフェア(2019)
- コールオブデューティ:ブラックオプスコールドウォー
- コントロール
- Crysisリマスター
- 私たちに月を届ける
- Fortnite
- Ghostrunner
- 正義
- Mechwarrior V:傭兵
- メトロエクソダス
- マインクラフト
- ムーンライトブレード
- パンプキンジャック
- Quake II RTX
- シャドウオブザトゥームレイダー
- 光にとどまる
- ウォッチドッグスレギオン
- ウルフェンシュタイン:ヤングブラッド
一方、Nvidiaは、次のタイトルがリリースされたらレイトレーシングもサポートすることを確認しています。
- アトミックハート
- サイバーパンク2077(発売)
- ダイイングライト2
- ドゥームエターナル
- 入隊(11月のクローズドベータ版)
- JX3
- モータルシェル(11月)
- オブザーバー:System Redux
- 準備ができているかどうか(早期アクセスの開始)
- エリジウムの指輪(発売)
- 同期:オフプラネット
- ウィッチャーIII
- ヴァンパイア:マスカレード–ブラッドライン2
- World Of Warcraft:Shadowlands(11月)
- Xuan-Yuan Sword VII(発売)
RTXとDLSSの両方をサポートする今後のゲーム–画像:Nvidia
これらは多くのゲームのようには見えないかもしれませんが、レンダリングの主な形式がレイトレーシングである可能性が非常に高い方向への出発点を表しています。現在、パフォーマンスに関しては、レイトレーシングによるパフォーマンスヒットが少し低下するかどうかを予測するのは非常に困難です。ただし、DLSSが改善され、レイトレーシングをオンにすることで発生するパフォーマンスの低下を十分に補うことが期待できます。執筆時点では、DLSSをサポートするゲームのリストは決して広範ではありませんが、Nvidiaがいくつかの今後のゲームのDLSSサポートも発表したことを念頭に置いておくとよいでしょう。ディープラーニングスーパーサンプリングを現在サポートしているすべてのゲームは次のとおりです。
- 国歌
- 戦場V
- ブライトメモリ
- コールオブデューティ:ブラックオプスコールドウォー
- コントロール
- デスストランディング
- 私たちに月を届ける
- F1 2020
- ファイナルファンタジーXV
- Fortnite
- Ghostrunner
- 正義
- マーベルのアベンジャーズ
- Mechwarrior V:傭兵
- メトロエクソダス
- マインクラフト
- モンスターハンター:ワールド
- シャドウオブザトゥームレイダー
- ウォッチドッグスレギオン
- ウルフェンシュタインヤングブラッド
お気づきかもしれませんが、DLSSをサポートするゲームのほとんどは、何らかの形のレイトレーシングもサポートするタイトルです。これは、DLSSが主にレイトレーシングのパフォーマンスの大幅な低下を軽減するための補償技術として開発およびリリースされたという理論をさらに裏付けるものです。 DLSSは非常に印象的なテクノロジーですが、Nvidiaはスーパーコンピューターを使用して複雑な計算を実行し、NvidiaGPU内のTensorコアが従うアルゴリズムをトレーニングすると説明しています。レイトレーシングと同様に、DLSSもより多くのゲームに登場すると予想されます。
- 悪の中で
- アトミックハート
- 境界
- サイバーパンク2077(発売)
- 永遠の端(11月)
- JX3
- モータルシェル(11月)
- Mount&Blade II Bannerlord(11月)
- 準備ができているかどうか(早期アクセスの開始)
- スカベンジャー
- ヴァンパイア:マスカレード–ブラッドライン2
- Xuan-Yuan Sword VII(発売)
レイトレーシングと組み合わせたDLSSは、2020年現在のゲーム業界の未来のようです。
DLSS 2.0をサポートするゲームのリストは増え続けています–画像:Nvidia
結論
ラスタライズは、ポリゴンの2D平面をゲームの画面上の3D画像に変換するために長い間使用されてきた手法です。 2018年、Nvidiaは、ゲームでのリアルタイムレイトレーシングを完全にサポートするRTX 2000シリーズのグラフィックカードを発表しました。これは、複雑な計算を使用してシーン内の光線をトレースし、光がどのように相互作用するかを正確に描写する手法です。シーン内のオブジェクト。これは予期せぬ嵐によってゲームの世界を奪い、業界全体がレイトレーシングを今後の主な焦点として置きました。
これを書いている時点で、Nvidiaはレイトレーシングのパフォーマンスをさらに向上させる次世代のグラフィックカードをリリースし、AMDとコンソールの両方がこの機能の完全なサポートも発表しました。 Nvidiaは、レイトレーシングによるパフォーマンスの低下を補うために、AIとディープラーニングを使用して低解像度でレンダリングされた画像をスマートにアップスケールするディープラーニングスーパーサンプリング技術も改善しました。
レイトレーシングは今後も続くようで、この機能をサポートする最初のタイトル数はそれほど多くありませんが、今後はリアルタイムレイトレーシングを完全にサポートするタイトルがますます発表されています。今後のゲームでレイトレーシング機能を微調整し、この機能をサポートするタイトルの数を増やすのは、開発者の責任です。 NvidiaとAMDは、レイトレーシングをオンにしたいときにゲーマーが壊滅的なパフォーマンスの低下を経験する必要がないように、ハードウェアをこの機能用に最適化する責任もあります。