【Shade】イラディアンスキャッシュのノイズの傾向と対処法
先日,9にアップして以前作成していた作品をパス×パスでレンダリングしてみたらバックが雲模様になってしまいました。何が原因かお分かりの方いらっしゃいますか?ちなみに第2画像はレイトレです。(こちらは雲模様にはなりません。)
典型的な IBL + IC のもやもやノイズだよなぁ。と教えてあげたいけどログインするのがめんどくさいのでここで書いて答えたつもりの自己満足。
Shade のパストレーシングは背景の明るい点に対しても暗い点に対しても同じ重みでレイを飛ばして輝度を計算するので、インテリアのパノラマ写真のように照明や窓など極端に明るい部分を含む IBL を用いてレンダリングすると、レイの当たりはずれによって輝度が大きく変わってしまいひどいノイズが出ます。
シーン内に配置した光源や無限遠光源に対しては専用のレイを光源に向けて飛ばすので収束誤差は非常に小さく、それほどひどいノイズは出ません。
IBL を用いる場合でも“どこにレイが当たっても似たような輝度になる画像”例えば空の画像なんかの場合にはノイズは比較的少なくなります。
ところで、イラディアンスキャッシュではオブジェクト表面の形状を見て GI 計算を手抜きしています。ステージのような単調な面では、集束誤差が大きくノイズだらけにもかかわらず、表面が単調だという理由でさらに手抜きをする格好になるためノイズが出まくって使い物にならない絵になります。
解決策には
- キャッシュトレランスを大きくする。
- キャッシュトレランスを小さくするか、イラディアンスキャッシュを OFF にする。
を試すと良いです。
1は「ノイズがでかすぎて判別できない」状態を目指す手法で、2は「ノイズが細かすぎて判別できない」状態を目指す手法です。
1の方法を拡大解釈してノイズの斑点が無限大の大きさになったと考えるとそれはすなわち“環境光”を指すわけで、やればやるほど LI でのレンダリング結果に近づきます。 GI 萌えの私としてはお勧めしません。ただ、環境光で試行錯誤する手間を自動でやってくれると思えば悪い手法というわけではありません。特にテストレンダリングなんかでは重宝します。
2の方法は悲しいですが頑張ってレンダリングしてください。ちなみにイラディアンスキャッシュを有効にしている限り、 停止→再開 するとレンダリング結果がおかしくなるので、少々部屋が暑くなってきたとか、うるさくて寝れないだとか、ゲームをしたいだとか思っても決してストップしてはいけません。
以上、IBLで出るノイズの話。頑張って書いたけど見てもらえないんだろうな…。