「パストレーシング」の版間の差分

 
(同じ利用者による、間の1版が非表示)
17行目: 17行目:
[[ファイル:パストレーシング.png|none|640px]]
[[ファイル:パストレーシング.png|none|640px]]


無尽蔵にレイを撃つと永遠に処理が終わらないので、一般的には「[[ランダム]]な16方向に飛ばす」などといった[[乱数]]を用いて計算量を一定量に抑えるという手法が用いられる。などのいわゆる[[モンテカルロ法]]だ。
無尽蔵にレイを撃つと永遠に処理が終わらないので、一般的には「[[ランダム]]な16方向に飛ばす」などといった[[乱数]]を用いて計算量を一定量に抑えるという手法が用いられる。いわゆる[[モンテカルロ法]]だ。


==画質==
==画質==
25行目: 25行目:
レイを飛ばす数は、そこそこな画像で「1ピクセル100レイ」、[[ラスタライズ法]]より明らかに高画質な画像で「1ピクセル5000レイ」と言われている。ハリウッド映画などではそれ以上の病的な数のレイを飛ばしていると言われている。
レイを飛ばす数は、そこそこな画像で「1ピクセル100レイ」、[[ラスタライズ法]]より明らかに高画質な画像で「1ピクセル5000レイ」と言われている。ハリウッド映画などではそれ以上の病的な数のレイを飛ばしていると言われている。


==応用1==
== ノイズ ==
レイトレーシングやパストレーシングの欠点として「レイが1回も反射しない部分(背景)にノイズが発生しやすい」という問題がある。
レイトレーシングやパストレーシングの欠点として「レイが1回も反射しない部分(背景)にノイズが発生しやすい」という問題がある。


この問題の解決策としては、「そこそこ高速」かつ「そこそこな画質」を得る方法として、
=== 解決策1 ===
1ピクセルあたりの「飛ばすレイの数」を単純に増やすという手法である。
当然ながら計算量が激増する。
[[力こそパワー]]である。
 
=== 解決策2 ===
「そこそこ高速」かつ「そこそこな画質」を得る方法として以下のような手法もある。
* [[ゲーム]]などで一般的な[[ポリゴン]]のレンダリング([[ラスタライズ法]])を事前に行い、
* [[ゲーム]]などで一般的な[[ポリゴン]]のレンダリング([[ラスタライズ法]])を事前に行い、
* それを視点から真正面の範囲外に1枚の巨大な[[テクスチャ]]として配置しておき、
* それを視点から真正面の範囲外に1枚の巨大な[[テクスチャ]]として配置しておき、
* レイがモデルと衝突せずに範囲外に突き抜けた場合はそのテクスチャと衝突した箇所の色をサンプリングする
* レイがモデルと衝突せずに範囲外に突き抜けた場合はそのテクスチャと衝突した箇所の色をサンプリングする


という技法もある。
==散乱==
 
この技法を使わずクソ真面目にやるとレイとモデルが衝突しなかった箇所にノイズが発生し、
それを穴埋めるには大量のレイを飛ばして補完する必要があり計算量が激増する。
 
==応用2==
光散乱を考慮したものは「[[ボリュメトリックパストレース]]」と呼ばれる。
光散乱を考慮したものは「[[ボリュメトリックパストレース]]」と呼ばれる。
レイが反射するたびにレイが分裂する感じである。
レイが反射するたびにレイが分裂する感じである。