北米時間2019年3月18日,GDC 2019の開催に合わせる形でNVIDIAは,
Pascal世代以降のアーキテクチャ採用GPUでDirectX Raytracing(以下,DXR)
が利用可能になると発表した。
DXRベースのリアルタイムレイトレーシングはこれまで,「RT Core」を統合するGeForce RTX 20シリーズでのみ利用可能だったが,今後登場する新しいドライバソフトウェアにより,「
GeForce GTX 1060 6GB」以上のGeForce GTX 10シリーズとTITAN X&Vシリーズ,そしてGeForce GTX 16シリーズの計10製品でもDXRを利用可能になるという。
GeForce GTX 20シリーズTITAN RTX以外に,Pascal世代の中上位クラスとVolta世代,「RT Core」非搭載のTuring世代がDXRの対象となる。「Basic RT Effects」「Low Ray Count」については後述したい
 |
簡単に振り返っておくと,DXRはリアルタイムレイトレーシングに対応するAPIセットだ。DirectX 12の新要素としてWindows 10 October 2018 Updateで有効になったDXRは,これまで,リアルタイムレイトレーシングに対応する専用ハードウェアがなければ動作しないとされていた。それだけに,今回のNVIDIAの発表には非常に大きなインパクトがある。NVIDIAの方針転換を示すものとも言えるかもしれない。
ただし,RT Coreを持たないGPUで,GeForce RTX 20シリーズと同等の処理までは行えないという。それが先のスライドにあった注意書きで,RT Coreを持たないGPUでは投射できるレイ(ray,線)の数が少なく(Low Ray Count),また基本的なレイトレーシングのエフェクトにしか対応できない(Basic RT Effects)とのことだ。
複雑かつ複数のレイトレーシングエフェクトをサポートできるRT Core搭載GPUとは明確な違いがあるとされていることは押さえておいたほうがいいだろう。
また,性能面でも違いがあるとNVIDIAは強調している。実例として挙がったタイトルの1つ「Metro Exodus」では,DXRを有効にすると「
GeForce GTX 1080 Ti」(以下,GTX 1080 Ti)で18fpsのフレームレートしか得られないとのことである。
GTX 1080 Ti搭載PCでMetro ExodusのDXRを有効にするとフレームレートは18fpsにまで下がるとのこと,もしPascalアーキテクチャのまま60fpsを得ようとすると,350億トランジスタ,消費電力650WのモンスターGPUが必要になってしまうそうだ
 |
これに対し,「
GeForce RTX 2080」(以下,RTX 2080)搭載PCでMetro ExodusのDXRを有効にすると61fpsが得られるそうである。
「Pascalアーキテクチャで消費電力650WのモンスターGPUに相当する性能」が,Turing世代のRTX 2080なら,136億トランジスタ(※スライドは140億),消費電力215WのGPUで得られるという
 |
またNVIDIAは「Shadow of the Tomb Raider」や「Battlefield V」を例として出し,GTX 1080 TiとRTX 2080との間でDXR性能がどれほど異なるかを示している。
Shadow of the Tomb Raiderの例。GTX 1080 TiでDXRを有効化した状態(※スライド中「PASCAL」を基準として,RTX 2080でRT Coreを無効化した状態と有効化した状態,有効化しただけでなく,Tensor Coreを活用して実現する,深層学習ベースのアンチエイリアシング技術である「DLSS」も併用した状態で得られる性能を比較したものとされるグラフだ。RTX 2080はGTX 1080 Tiに対して最大2倍のフレームレートが得られるという
 |
こちらはBattlefield Vの例。RT CoreとDLSSの活用により,RTX 2080はGTX 1080 Ti比で1.6倍高い性能を発揮できるとのことだ
 |
要するに,これらのスライドを通じてNVIDIAは「既存のGPUでDXRに対応するといっても,機能的に制限されるうえに性能も出ませんよ。だからGeForce RTX 20シリーズを買いましょう」的なメッセージを伝えようとしているわけだ。実際,RT Core非搭載のGPUでDXRがどこまで実用的かというと,現時点では何とも言えないというのが正直なところである。
ただ,ドライバが出れば,「DXRに対応するGPU」の数それ自体は,従来比で圧倒的に増える。ゲームデベロッパもDXRをサポートしやすくなるはずだが,それをアピールするためか,多数のゲームエンジンやAPIがリアルタイムレイトレーシングに対応するとして,NVIDIAはそのリストも公開している。「Unreal Engine」と「Unity」以外に,「CRYENGINE」のロゴも並んでいるが,これは
先のCrytekによる発表がDXRのサポートということを意味する可能性もある。
DXR対応ゲームエンジンやAPI(とGPU)の一覧。もしかすると「CRYENGINE 3」では,GPUがハードウェアレイトレーシングアクセラレータを搭載していないとき,DXRのAPIコールをDirectX 12に置き換えるライブラリ「D3D12RaytracingFallback」などの活用によってDXRを実現している可能性もあると考えている
 |
リアルタイムレイトレーシングに対応する特別なハードウェアを持たないGPUでDXRのサポートが始まったことはDXRの普及を後押しするという理解で問題ないだろう。今後の展開に期待したい。