Quake II RTX: Vulkan のレイ トレーシング効果を使った名作 FPS ゲームの再設計

執筆者: Andrew Burnes 投稿日: 2019年3月18日 | GeForce RTX GPUs Featured Stories GDC 2019 Ray Tracing

1997 年に発売された id Software の『Quake II』は、新しいシングルプレイヤーのキャンペーン、非常に遅い 56K モデムで長年プレイしていた待望の中毒性の高いマルチプレイヤー モード、そして難しい設定などしなくても 3DFX GPU による高速化をサポートする驚くべきエンジンをゲーマーたちにもたらしました。カラー照明、動的な視覚効果など、640x480 解像度で美しく、または最上位機種のハードウェアを使用している場合はおそらく 800x600 で実行されていました。

2001 年には、id Software が Quake II エンジンをオープン ソースにして、全面的に見直されたエンジンで誰もが合法的に改変してリリースできるようになりました。それ以来ずっと、ファンにより個人的なプロジェクトの取り組みが続けられ、その最新版が「Q2VKPT」です。

1 月にリリースされた「Q2VKPT」は、ドイツのカールスルーエ工科大学の学生で、NVIDIA の元インターンであった Christoph Schied (博士) によって作成されました。名前の「PT」はパス トレーシング (Path Tracing) の略で、すべての照明効果 (影、反射など) を単一の「純粋な光線追跡アルゴリズム」に統合する、計算集約型のレイ トレーシング手法です。レイ トレーシングが大流行している中、『Quake II』の美しく、リアルタイムでレイ トレーシングされたバージョンを作成した開発者の言葉は世界中で話題となりました。

しかし、パス トレーシングにはマイナス面もあります。ランダム サンプリング アルゴリズムは、2016 年の Q2PT に見られるように、ゲームプレイ中に粗い斑点のような「ノイズ」を生じさせました。その問題を解決するために、Christoph と彼の大学の仲間達は、NVIDIA のインターンシップであった 2016 年に最初に考えられたアイデアを基にし、時間的アンチエイリアシング (Temporal Anti-Aliasing) と同様な方法で、複数のゲームフレームの結果を組み合わせて前述した粒状ノイズを高速に除去する方法を編み出しました

Christoph が自身のサイトで述べているように、「Q2VKPT」は未来の研究の基礎であり、より優れたレイ トレーシングのためのプラットフォームです。そのため、「Q2VKPT」のリリース直後すぐに、NVIDIA のレイ トレーシングのエキスパートたち (その多くは以前に彼と一緒に働いていた同僚です) は、彼に連絡を取り、機能強化や大きな追加開発をできるか尋ねました。彼は快諾してくれました。そして NVIDIA は GDC 2019 で Christoph と一緒に新しく作成された『Quake II RTX』を発表したのです。

Linux をサポートする Vulkan レンダラー上で実行される『Quake II RTX』は、純粋なレイトレーシング ゲームです。これはつまり、すべての照明、反射、影、VFX はレイトレーシングされ、従来の効果や技法を利用していないことを意味します。

「では、Q2VKPT と比較して Quake II RTX の新機能は何ですか?」と訊ねられたとしたら、それは山ほどあります。リアルタイムで時間を制御できる正確な太陽光と間接光、水とガラスの屈折、発光/反射/透明のサーフェス、サーフェスに細部を追加するノーマル/ラフネス マップ、武器の粒子とレーザーの効果、時間の経過によって変わる山/空/雲に特化したプロシージャル環境マップ、敵が潜む暗い角を照らすフレア ガン、ノイズ除去の改善、SLI サポート (Voodoo 2 SLI を思い出した人は手を挙げて)、Quake 2 XP 高精細武器/モデル/テクスチャ、オプションの NVIDIA Flow の炎/煙/粒子効果、などまだあります!

『Quake II RTX』のデモ映像をご覧ください。プレイヤー右下の歯車アイコンの設定から、字幕をオンにして日本語を選択すると、動画を日本語字幕付きでご視聴いただけます。

RTX On/Off の比較画像を見るには、下のスクリーンショットをクリックしてください。

上と下のスクリーンショットで、物理ベースのマテリアルによる反射、 屈折/発光のテクスチャ、ハード シャドウとソフト シャドウ、 間接的な拡散照明、動的なエフェクト ライティング、動的な武器の効果、リアルタイムで制御可能な時間変化による照明などがご覧いただけます。すべてが GeForce RTX グラフィックス カードで初めてリアルタイムで動作します。

さらに、『Quake II RTX』は あらゆる開発者が Vulkan を利用してゲームにレイ トレーシング効果の追加を可能にする Vulkan 拡張機能である (VK_NV_ray_tracing としても知られる) NVIDIA VKRay で実行さています。VKRay はこちらでご紹介した内容と RTX レイ トレーシング対応のゲーム タイトルで見られる全てのものをサポートし、Linux とその他の Vulkan 対応プラットフォーム上の Vulkan リリースにてゲーム プレイの準備ができています。 NVIDIA VKRay を利用するには、NVIDIA 開発者向けサイトでチュートリアル、コード サンプル等を入手してください。

『Quake II RTX』の詳細については、 GDC 2019 のプレゼンテーションをご覧ください。また、GeForce.com も是非ご確認ください。

Copyright © 2019 D Scott Boyce. All Rights Reserved. Subject to Creative Commons license version 1.0, Quake2maX "A Modscape Production". Textures from Quake2maX used in Quake2XP. Roughness and specular maps were adjusted to work with the Quake II RTX engine. @scobotech