1. トップ
  2. 新着ニュース
  3. IT
  4. パソコン

GPUの「レイトレーシング処理」改良の歴史をひもとく【Radeon RX 7000シリーズ編】

ITmedia PC USER / 2024年8月23日 20時5分

 上図では、3つのレイ探索モードが示されている。一番上は通常の探索モードで、真ん中と一番下がRDNA 3において新規実装されたモードとなる。

 中央の「Largest First」は、放たれたレイが横切ることが想定される直方体を、大きい順に並べ直すという処理だ。放たれたレイが最初に大きなものに衝突することになるので、影生成に最適とされる。

 確かに影生成では、視点から光源に向かってレイを飛ばした際に、手前に小さいオブジェクトがいくら立ち並ぼうが、結局大きいオブジェクトが光を全て遮蔽(しゃへい)してしまうので、手前のものたちが“全て”影で飲み込まれてしまう。つまり、影生成が目的のレイトレースだったら、大きいオブジェクトとの衝突判定を早期に行った方が、処理を早く完了できる可能性が高まるのだ。

 下段の「Closest Midpoint First」は、放たれたレイが横切ることになる直方体群の“中心点”を求めて、近い順に並べ替えるという処理だ。このモードは、レイの発射元から近いものが一番影響を及ぼすことになる「映り込み表現」や「間接光表現」などに向いているとされる。

 3Dゲームグラフィックスでは、着目しているピクセルの位置(レイの発射元)から遠いオブジェクトは、影響が少ないと判断して無視しても問題ないと判断されることも多い。そのため、先述の通り映り込みや間接光を表現するためにレイトレースする際に、このモードは都合がよくなる。

 両者共に、最適化(プログラムの改修)なしに既存のレイトレ対応ゲームを高速化できる機能となる。

改良ポイント3:不要な「テクスチャー読み出し」の放棄

 3つ目の改良ポイントは、まず下に示すスライドを見てほしい。最上段にある「青と赤のマス」の図解がそれだ。

 青いマスは「有効な衝突レイによるテクスチャーの読み出しリクエスト」、赤いマスは「読んでも読まなくても構わないリクエスト」を表していると考えてほしい。

 この図解を概説すると、「レイが衝突した先のポリゴンに設定された各材質ごとの陰影計算を、プログラマブルシェーダーを呼び出して行う際に、新しい最適化処理を2つ組み込んだ」というものになる。

 3Dグラフィックスに明るい人なら、この説明を見て「これって、GeForce RTX 40シリーズの「SER(Shader Execution Reordering)」と同じような機能じゃない?」と思うかもしれない。しかし、実際にやっていることは全然違う。順を追って説明しよう。

この記事に関連するニュース

トピックスRSS

ランキング

複数ページをまたぐ記事です

記事の最終ページでミッション達成してください