Arnoldでよくある質問⑦ 色の照り返しについて(Arnoldバージョンに注意)

どうも!Maya太郎です。
最近続けている「よくある質問」シリーズは
Arnoldに関する問い合わせでのFAQの様なものを
提供いただいたものを基に加筆し掲載しています。
過去記事にも記載されている内容もあるのですが、
作例中にさりげなく解説しているよりも
機能に的を絞ったQ&A形式も結構便利ですね。

まだ数例ありますので
もう数日、お付き合いください。
初心者の方の参考になればと思います。

■ご注意■
記事掲載時のArnold動作環境に関してですが
Arnold4.X→Arnold5への移行期になっております。
通常のMayaのインストール環境では4.Xの状態でお使いいただいてますが
個別のダウンロードで最新版の5.0が使えるようになっております。
Max2018ではArnold5以降からの実装になりましたので
事実上、今後はMayaも次期版からArnold5の環境に移行することになります。
標準シェーダーがStandard→Standard Surfaceに変更になり
一部の機能の互換性が確認されていない部分もあります。
当面は記事内容のバージョン表記に混乱を招くこともありますが
近い将来皆様の環境もArnold5以降に移行するはずですので
当ブログは基本的にArnold5を前提として紹介しています。

皆様ご利用の環境との違いにご注意ください。

 


質問
Arnoldでレンダリングすると必ずオブジェクトの色の照り返しがおきます。
これはグローバルイルミネーションが行われていると解釈して間違いないでしょうか?
またこれを見えなくするには全てのライトで
Arnold>Indirect=0とするので問題ございませんか?
グローバルイルミネーションの計算を全てオフにするような設定がありましたらご教示ください。

回答
レンダーセッティング内のDiffuseDepthとGlossyDepthを0にすることでオフにできます。
(Arnold5.0以降からは GlossyDepthがSpecularDepthに変更)

またレイスイッチで拡散反射やグロッシーレイに対し色を黒にする、などという特殊な方法でもオフにできます。
シェーダを書くという手もあります。


Maya太郎の見解

検証用のシーンを作りました。(検証はArnold5にて)

こちらがデフォルト設定での
色の照り返しがある場合です。
赤い壁に当たった光が跳ね返り
白い壁などを赤く照らす、という現象ですね

これらの跳ね返り回数を0にすることで
GI的な処理が無効になり
色の照り返しはなくなります。
しかし、旧来のレンダラーの様に直接光しか
扱わないのと同様になるので間接光表現もなくなります…

より複雑な制御をするためには下記の様な方法を使う必要があるかもしれませんね
上記回答文より
「またレイスイッチで拡散反射やグロッシーレイに対し色を黒にする、などという特殊な方法でもオフにできます。
シェーダを書くという手もあります。」


よく調べてみたらこんな機能も…
(ただし旧バージョンのみ)

最新版のArnold5(Mtoa2)以降では使えませんが
それまでのArnold4.Xで標準のStandardシェーダーには
AdvancedのBounce Factorを数値を0にすることで
色の跳ね返りのみをなくすことが出来ました。

この数値を上げることで色の跳ね返りを強調することも出来ました。

しかし、このシェーダーはArnold5以降、使えなくなる運命です。
最新版のArnold5で標準シェーダとなった
standaer surfeceシェーダーでは同等の機能を探すことはできませんでした。
そのうち見つかるか、実装されるかもしれません。

新しいバージョンの標準シェーダーは、
以前できた機能のいくつかが使えなくなってる部分があるようなので

(見出せないだけで断定はできませんが)
不便に感じる部分もありますね…ボソリ

 

では!