どうも!Maya太郎です。
前回の記事「Maya2017 Arnoldのノイズ軽減方法を試してみる①」の「仕切り直し」です。
前回、シーン内の照明にメッシュライトを使っていたせいか
レンダリング時間の最適化の効果がよくわからなかったこともあり
通常のライトに置き換えて再度検証してみます。
作業自体は前回と同じですので
検証作業は特にトラブルも無くサクサクと進みます。
ということで、シーンの説明…
メッシュライト(オブジェクトをライト化したもの、自由な形状のライトを作れるが、計算負荷は高い)を
通常のライトに置き換えたものです。
すべての設定をデフォルト値に戻してレンダリングします。
57秒、だいたい1分とお考えください。
レンダー設定の「AOVs」から、レンダリングする要素を個別に出力することが出来るので、
レンダービューからチェックしたい要素を選択します。
・直接光のノイズ
まずは調整しやすい直接光関連をチェック。
direct_diffuseを見ると、何カ所か気になるノイズがあります。
direct_specularを見ると、diffuseほどではない程度ですが気になる部分を発見。
直接光関連(direct_diffuse、direct_specular)のノイズ削減は
該当するライトのサンプル数を上げることです。
この例ではキッチンの照明のサンプル数を上げて様子を見ます。
ライトの(アトリビュートから)サンプル数を1→3に上げると、ノイズが減りました。
direct_specularのノイズはほぼ気にならなくなりました。
ライトのサンプル数を上げたので、同様に効果があるはずのdirect_diffuseを見ると、ノイズに変化がありません。
(先ほど3に設定した)サンプル数をさらに上げてもほとんど変化がありません。
なぜか?
実はこのシャドウの発生源のライトは
キッチンの上のライトではなく、
さらに手前のリビングルームのライトが原因だったのです。
このライトのサンプル数を上げると…
きれいになりました。
直接光(ライトのサンプル数を上げる作業)は比較的簡単です。
レンダリング時間も57秒→69秒と気にならないレベルの変化です。
ただ、Beauty(全要素)を見ると、ノイズが減ったようには見えません。
ノイズ成分の多くは、別の要因にあるようです。
つづいて、間接光のチェックを行います。
・間接光のノイズ
indirect_specularを確認します。拡大すると細かいノイズがあります。
間接光のノイズ軽減は「レンダー設定」のサンプル数を調整することになります。
indirect_specularのノイズを軽減するには、Glossyのサンプル数を上げます。
気になる部分をレンダービューで拡大して
指定領域のみレンダリングすることで、追い込みの時間がとても速くなります。
この例では、2→4にすればある程度軽減できました。
ということでGlossyのサンプル数は4になりました。
レンダリング時間は2分18秒(138秒)と大幅に伸びました。
サンプル数二倍(2→4)でレンダリング時間(69→138秒)とちょうど二倍になっているので
「サンプル数によってレンダリング時間が線形に増えていく」という情報は本当の様ですね。
それとも単なる偶然?
つづいてindirect_diffuseをチェックします。
こちらは盛大なノイズが発生しております。このノイズが一番画質に影響を及ぼしていたのです。
indirect_diffuseを軽減するにはDiffuseのサンプル数を上げます。
Glossyの数値を上げたままだと、プレビューにも時間がかかるので
要素別の追い込み時には他のサンプルを切っておくのもいい方法かもしれません
(思いつきでやったことなので未保証です)
Diffuseは大幅にサンプル数を上げる必要がありました。
2→8で止めましたが、本当は10以上の設定にしたかったほどです。
今回は下図の様な設定で「決定」致しました。
レンダリング時間は9分ほど。
Diffuse値も「2→8」と4倍にすると、レンダリング時間もほぼ4倍になりました。
サンプル数の増加率がレンダリング時間に線形で影響している感じですね。
・まとめ
すべての要素に影響を及ぼすといわれるCamera(AA)のサンプル数はデフォルト値のままで
ある程度のノイズ軽減が出来ました。
皆さんもこうやって効率的にノイズ軽減やってみましょう。
効率的とはいえ、サンプル数をきっちり上げないとノイズはきれいになりませんね…
最近「デノイズ」という後処理でノイズを取る方法もいろいろと話題になっているので
これ以上の追い込みは、後処理任せのほうがいいと思います。
では!