輝点ノイズ: ボート シーン

physical_sky の太陽が原因で発生した輝点ノイズ

このシーンは、海を表すプレーン上にあるボートのモデルで構成されています。両方のモデルに standard_surface シェーダが割り当てられています。 上図からも確認できるように、このシーンには多くの「輝点ノイズ」が発生しています。この場合、skydome_light に接続された physical_sky シェーダの明るい日輪が原因です。この種のノイズは、Render Settings でサンプル数を増やしても除去が困難です。ただし、この種のノイズを解決するいくつかの方法があります。次に、その方法ついて確認します。

AOV

輝点ノイズの発生場所を特定する方法の 1 つは、AOV を使用してシーンをレンダリングすることです。

識別する AOV を選択する

輝点ノイズの原因が 2 つの場所にあることがすぐにわかります。

  1. いくつかの鏡面反射性が設定されたボートのシェーダ。
  2. 同様にいくつかの鏡面反射性が設定された海のシェーダ。

これらの AOV をレンダリングすると、輝点ノイズがはっきりと表示されます。

clamp_max_value: 10 (既定値) indirect_specular AOV (ボートに輝点ノイズが発生)

鏡面反射光の粗さ

specular_roughness の値を大きくすると、大きくて柔らかな鏡面反射光ハイライトが効率的に作成されるため、輝点ノイズの軽減に役立つこともあります。ボートに割り当てられた standard_surface シェーダの specular_roughness を大きくすると、輝点ノイズの数が減ります。 ただし、このインスタンスでこの手法を使用しても、輝点ノイズがまだ明らかに残っています。

specular_loughness の値が低い specular_roughness: 1。輝点ノイズは少なくなりましたが、まだ明らかに分かります。

鏡面反射光サンプル

海シェーダのサーフェスがほとんど鏡のようになるため、太陽が鏡面反射する海面で反射して、鏡面反射光 の値が非常に高くなります。このように鏡面反射光の値が高いとサンプリングが非常に難しくなるため、この場合に specular_samples の数を増やしても輝点ノイズは除去できません。

2 4

レイ スイッチ

最適な方法は、ray_switch シェーダを使用して鏡面反射光と拡散反射光によりシンプルなシェーダを割り当てることです。

AOV を確認すると、輝点ノイズが表示されなくなったことがわかります。

indirect_specular AOV rayswitch beauty (輝点ノイズなし)

Two standard_surface shaders -> rayswitch shader

クランプのサンプル値

シーン内のピクセルの出力値をクランプするオプションもあります。このコントロールを使用すると、シーン内のすべてのシェーダのピクセル サンプルが指定した最大値でクランプされます。下図は、輝点ノイズに対するクランピングの効果を示します。値を 1 にすると輝点ノイズが完全になくなります。ただし、レンダリングからダイナミック レンジも失われてしまいます。

clamp_max_value: 5 clamp_max_value: 1 (輝点ノイズ解消)