差分

ナビゲーションに移動 検索に移動

パストレーシング

71 バイト追加, 2021年7月2日 (金) 05:01
編集の要約なし
[[レイトレーシング]]の発展型のひとつである。
== 概要 == # 出力画像の[[ピクセル]]と視点から[[レイ]]の[[ベクトル]](方向)を計算し、レイを飛ばす。# レイはモデルに衝突すると[[ブロック崩し]]のように反射する。# レイが光源と衝突したらピクセルに照度を加算する。#: この照度は[[双方向反射率分布関数]]( [[BRDF]] )によって低下する。
#レイが範囲外に飛び出したら計算しない。
これを出力画像の全ピクセルに対して行う。ここまでは古典的なこれを出力画像の全[[ピクセル]]に対して行う。ここまでは古典的な[[レイトレーシング]]である。[[ファイル:レイトレーシング.png|noneなし|640pxサムネイル]]
レイトレーシングでは1ピクセルを生成するのに1個のレイを飛ばしているが、
パストレーシングではより高画質を得るために、1[[ピクセル]]を生成するのに「乱数で進行方向を微妙にずらしたレイを大量に飛ばして、その結果を集計する」という方法を用いる。
レイトレーシングでは1ピクセルを生成するのに1個のレイを飛ばしているが、パストレーシングではより高画質を得るために、1[[ピクセル]]を生成するのに「[[乱数]]で進行方向を微妙にずらしたレイを大量に飛ばして、その結果を集計する」という方法を用いる。
[[ファイル:パストレーシング.png|なし|サムネイル]]
 == 画質 ==
レイを飛ばす数を増やすと画質は向上するが、[[ねずみ算]]的に計算量が増える。
しかも一定量を超えるとあんまり違いはわからない。
レイを飛ばす数は、そこそこな画像で「1ピクセル100レイ」、[[ラスタライズ法]]より明らかに高画質な画像で「1ピクセル5000レイ」と言われている。ハリウッド映画などではそれ以上の病的な数のレイを飛ばしていると言われている。
== 応用1 ==
レイトレーシングやパストレーシングの欠点として「背景にノイズが発生しやすい」という問題がある。
より高速でそこそこな画像を得る方法として、
 * [[ゲーム]]などで一般的な[[ポリゴン]]のレンダリング([[ラスタライズ法]])を事前に行い、* それを視点から真正面の範囲外に1枚の巨大な[[テクスチャ]]として配置しておき、* レイがモデルと衝突せずに範囲外に突き抜けた場合はそのテクスチャと衝突した箇所の色をサンプリングする 
という技法もある。
それを穴埋めるには大量のレイを飛ばして補完する必要があり計算量が激増する。
== 応用2==
光散乱を考慮したものは「[[ボリュメトリックパストレース]]」と呼ばれる。
レイが反射するたびにレイが分裂する感じである。
[[モンテカルロ法]]の説明文で「パストレーシング」と書かれている場合はほぼ「[[ボリュメトリックパストレース]]」を指している。
== 関連 == * [[レイトレーシング]]* [[パストレーシング]]* [[ライトトレーシング]]* [[双方向パストレーシング]]* [[メトロポリス光輸送法]]* [[フォトンマップ]]* [[プログレッシブフォトンマップ]]

案内メニュー