SourceChord

C#とXAML好きなプログラマの備忘録。最近はWPF系の話題が中心です。

IBL

昨日作ったHDRファイルのローダを自作のレンダラに組み込んでみました。
背景の天球にHDR画像をマッピングして、天球光のみのシーンです。
1000sample/pxでレンダリング時間はだいたい10分くらい。


ただし、まだまだ問題点があるので要修正
・パストレースをしている過程ではfloatで色情報を持っているが、各ピクセルの色をLDRのデータに格納してしまっている。
 →hdrで結果を保持するようにして、レンダリングが終わってからトーンマッピングをするように変更する!!
・天球へのマッピングがまだしっかりできてない・・


でも、hdrで内部の色情報を持つようにするとちょっと気分がいいな。
色の情報をすごく自然に扱ってる気がする。
色をLDRで扱っていると、ライトに照らされた白い床もライト自身も色情報としては(255, 255, 255)となってしまうからなんか気持ち悪いなぁ、などと思っていたので。
ただ、HDR画像を天球光に用いると、hdr画像の明るい部分と暗い部分のバラつきがものすごく大きいので、普通にロシアンルーレットで拡散反射面のサンプリングをしていると、粒状のノイズが乗りやすいようです。
サンプリング方法をもうちょっと考えないと。