Microsoftがレイトレーシングをリアルタイムで行えるAPI「DirectX Raytracing」を公開、ゲームも映画並みにレイトレーシングを活用する時代へ


MicrosoftがGDC2018で、「Raytracing(レイトレーシング)」を活用できるDirectX 12向けのAPI「DirectX Raytracing(DXR)」を公開しました。すでにNVIDIAやAMDもDXRサポートを明言しており、映画製作で使われるCG技術であるレイトレーシングがPCゲームでも活用されることになりそうです。

Announcing Microsoft DirectX Raytracing! – DirectX Developer Blog
https://blogs.msdn.microsoft.com/directx/2018/03/19/announcing-microsoft-directx-raytracing/

Microsoft's DirectX Raytracing paves the way for lifelike gaming, the graphics holy grail | PCWorld
https://www.pcworld.com/article/3263746/components-graphics/microsoft-directx-raytracing-dx12-features-hardware-software.html

人間の目は反射や屈折を経て入って来た光を網膜で感知でき、それを脳が合成することで人間は映像を描画(認識)できます。レイトレーシングでは、このような光源からさまざまな経路で飛び込んでくる光を、光の情報として利用して像をシミュレートします。現実世界の照明の仕組みを利用する技術とも言えるレイトレーシングでは、物体の反射率、透明度、屈折率などの情報を反映させた像を得られるので、非常に高い色の再現性と画質を実現できますが、光の経路を個々に計算するため、膨大なコンピューティング性能が求められます。このため、レイトレーシングは高性能なマシンを使って長い時間を費やすことが許される映画製作の場面でのみ利用されていたそうです。

レンダリングに長時間かけることが許される映画に対して、PCゲームではリアルタイム性が求められます。そこで、PCゲームでは、3Dモデルを2Dのピクセルに変換した上で色情報を適用するという「Rasterization(ラスタライズ)」という技術が使われます。ラスタライズはレイトレーシングに比べるとはるかに高速な描画が可能ですが、散乱や屈折などの光の一般的な特性が原因で発生する視覚情報をシミュレートするには、別にシャドウマッピングなどの技術が必要になります。そのため、ラスタライズによって作られた描画には「リアルさ」の限界があるとのこと。

Microsoftは、レイトレーシングをリアルタイムで活用できるAPI「DirectX Raytracing(DXR)」を発表しました。DXRはDirectX 12用のAPIで、一般的で柔軟性のある「CreateStateObjectメソッド」が採用されており、パイプライン設計の変更にも柔軟に対応できるとMicrosoftは述べています。

Microsoftによると、PIX for WindowsはすでにDXRをサポートしており、DXRとハードウェアがどのように相互作用し合うのかを理解できるとのこと。


また、Electronic Artsの「Frostbite」「SEED」、Epic Gamesの「Unreal Engine」、Futuremarkの「3DMark」、Unityの「Unity Engine」などが、DXRをサポートすることがMicrosoftから発表されています。

Electronic ArtsはDXRを利用したゲーム「SEED」の映像を公開済み。以下のムービーを見れば、DXRによって光の当たり具合が高画質かつリアルタイムで描画できる様子が一発で理解できます。

SEED - Project PICA PICA - Real-time Raytracing Experiment using DXR (DirectX Raytracing) - YouTube


NVIDIAもレイトレーシングに関する技術「RTX」を発表しましたが、DXRとの連携によってリアルタイム・レイトレーシングをサポートする予定。NVIDIAのトニー・タマシ氏は、「NVIDIA RTXとMicrosoftのDXRの両方をサポートするほとんどのゲームでは、ハイブリッドでの実装が行われると予想しています」と述べています。また、AMDもDirectX 12とレイトレーシングの定義や改良、サポートに関してMicrosoftと協力していることを明らかにしており、RadeonグラフィックスでDXRをサポートする予定です。

もちろんレイトレーシングだけで描画するにはマシンパワーが十分ではないため、リアルタイムでの完全レイトレーシングが実現されるのはまだまだ先。当面はラスタライズに光の特徴的な描画を加える形でレイトレーシングがPCゲームの描画に適用される見込みです。

・関連記事
圧倒的性能を誇る「DirectX 12」はゲーマーや開発者にとってどんな意味があるのか - GIGAZINE

VRの没入感を高めてレンダリング負荷も軽減する新技術をNVIDIAが披露 - GIGAZINE

女優の表情や動作をリアルタイムでゲームに反映するすさまじい技術 - GIGAZINE

写真の特徴を別の写真に移し替える軽量なアルゴリズム「FastPhotoStyle」をNVIDIAが開発 - GIGAZINE

トイ・ストーリーのCG生成に使われたマシンはiPhone6の半分程度の性能 - GIGAZINE

DirectX 12の異種混合GPU「EMA」でGeForceとRadeonをハイブリッドすると意外な結果に - GIGAZINE

in ソフトウェア,   動画,   ゲーム, Posted by logv_to