Vrayのノイズ軽減! -マテリアルとの関係性-

Vrayのノイズ軽減! -マテリアルとの関係性-

2021-05-14

ノイズの発生源

今回はVrayのノイズの除去/軽減方法についてお話したいと思います。
大きく分けてノイズの発生源は3つあります。
①マテリアルによるノイズ
②レンダリングによるノイズ
③光によるノイズ

今回は①のマテリアルによるノイズについて解説していきます。
②については「Vrayのノイズ軽減! -レンダリングエンジンとの関係性-」で解説しております。
③については「Vrayのノイズ軽減! -ライトとの関係性-」で解説しております。
そちらをご覧ください。
今回は①のマテリアルのみにターゲットを絞って説明します。

Vrayのノイズ除去/軽減!

Vrayでレンダリングはワンクリックでできますが、
設定方法をしっかり理解しておかないと、後々不具合が発生します。
今回はそのひとつ「ノイズ除去/軽減」について話したいと思います。
これを話すにあたって、本当はいろいろと解説しなければならないことが
山ほどあるのですが、いろいろ割愛して話します。
今後、割愛した部分はこのサイトを通じて解説していきます。

Vrayでレンダリングするとノイズってなぜできるの?
-マテリアル編-

Vrayでノイズはなぜできるのか!?
普通は綺麗にレンダリングができることに越したことはないのですが、
そうなると、レンダリング時間がかなりかかります。
さらに、ノイズの発生しないマテリアルの場合は、
特に関係ないのにノイズ軽減をしても意味がありません。
シーンに合うように設定させるため、ノイズの軽減率を調整できるようになっています。

Vrayのノイズを軽減しなければならないCGとそうでないCG!

ノイズ軽減が必要なCGとそうでないCGとタイトルで書きましたが、
実際はマテリアルの設定で軽減するかどうかが決まります!
それは「Glossness」です。
Glossnessは光沢性で、ピカピカしないマットな質感のマテリアルでGlossnessを使用するのですが、
これを1未満にすることで、マテリアルがマットになっていくのですが、
この数値が0に近づくほど、ノイズが多く発生します。
筆者の経験ですが、Glossness0.8ぐらいからノイズが目立つようになります。
マテリアルでGlossnessを調整する際に、ノイズを軽減させる必要が出てきます。
実際にみてみましょう。まずは、図-1を見てください。

図-1

図-1のリングを見てください。
これは、赤ラインを挟んで、普通のレンダリングと
ノイズ軽減したレンダリングを比較しています。
このマテリアルは実は全く同じものです。
レンダリングのノイズを軽減しているかしていないかの違いです。
マテリアルは図-2を使用しています。

図-2

マテリアルをみると、Glossnessが0.6となっていますよね。
これが、ノイズが発生する原因なのです。
現在の0.6ではかなりノイズが目立つので、
ノイズを軽減させる必要があります。
設定方法の前に、Glossnessが1の場合を見てみましょう。図-3

図-3

これは、鏡のマテリアルを割り当てています。
左がノイズ除去前、右がノイズ除去後です。
お分かりかと思いますが、ほとんど変わっていませんよね。
ちなみに、うっすら左にノイズがあるのは、床のマテリアルが映り込んでいて、
そのマテリアルがGlossnessが0.8ぐらいだからです。
この鏡のマテリアルはGlossnessが1.0です。図-3-2の設定でレンダリングしています。
そのため、まったくノイズが出ません。

図-3-2

なので、Glossnessの数値が低いマテリアルほど、ノイズが発生するので
Glossnessの数値が低いマテリアルを多用しているときは、
ノイズを軽減する必要があります!


それでは設定方法を見てみましょう。
すごく簡単です。

ノイズ軽減の設定方法

ノイズの軽減を設定するところは、「レンダリング」⇒「レンダリング設定」⇒「Vray」タブ⇒「Bucket image sampler」の
Min subdivs
Max subdivs
Noise threshold

この3つです。図-4
※Image samplerのtypeが「bucket」の時ではないと、この設定はできません。

図-4

通常は
Min subdivs:1
Max subdivs:4
Noise threshold:0.005

で設定されています。

ノイズが発生した場合は、正解の数値はありませんが、
参考に図-1で載せたノイズ除去の数値は
Min subdivs:4
Max subdivs:12
Noise threshold:0.001

です。ちなみに、ノイズの多さにもよりますが、
この設定で通常のレンダリングよりも2~5倍時間がかかります。

Min subdivsとMax subdivsは数値が大きければ大きいほど、
ノイズ軽減されます。感覚的になりますが、
Max subdivsが12程度でかなり軽減されます。
Min subdivsは1~4程度で良いと思います。
CGに応じて設定しましょう。

ちなみに、上記のsubdivsは、乗数の効果が適応されます。
例えば、Max subdivsを4から8に変更したので、
レンダリング速度が2倍変わるということではありません。
乗数なので、4の2乗から8の2乗になるので、
Max subdivsの数値を4から8にするということは、実際は16から64に設定するのと同じです。
つまり、4倍違うのです。

ただし、4倍違うからといって、レンダリング時間が4倍にはならないので、
このMax subdivsは少し感覚的に覚えましょう。
Max subdivsは数値を大きく調整しすぎないことがポイントです。
もちろん、他のNoise thresholdでもレンダリング時間は変わります。
レンダリング時間に影響されるものはほぼ全部なので、
ノイズ軽減もあくまで氷山の一角です。
あまり、とらわれすぎないようにしてください。

筆者がよくする調整は、Max subdivsのみ増やして、Min subdivsは調整しません。
もちろん、調整方法に正解はないので、好みに合わせて調整しましょう。
Noise thresholdは、ノイズ軽減する場合は0.001で設定しましょう。図-7

図-7

まとめ

今回は、ノイズの軽減/除去について説明させていただきました。
マテリアルのGlossnessの数値が1未満の場合にノイズが発生しやすいので、
そういったマットなマテリアルを多用しているときに
ノイズ除去/軽減をしましょう。
ただし、レンダリング時間が膨大になる可能性がありますので、
状況やクオリティに応じて設定しましょう!


レンダリングのクオリティ設定はノイズだけではありません。
今後このサイトを通してまた説明していきます。