Reflective Shader

Node Type: Surface Shader

ノード説明と目的:

『Reflective Shader』は、サーフェスに反射効果を与えます。これは、ウェット感、滑らかさ、その他の光沢のあるサーフェスをシミュレートするために使用する事が出来ます。反射率、反射の色調、透明度、屈折率、そしてレイトレース反射の有無をコントロールします。鏡面ハイライトの特性を変更して、サーフェスをプラスチック、金属、ガラスなどのように見せる事も出来ます。レイトレース反射はシーンを正確に反映しますが、レンダリング時間は長くなります。レイトレース反射を無効にすると、鏡面反射効果のみが提供されます。

反射は非常に明るく、そして急速に変化する処理を行うためレンダリングは非常に扱い難いです。光沢の明るいアンチエイリアス処理でノイズが生じる場合は、"Anti-aliasing"の値を増やす必要があります(8、またはそれ以上)。高い適応性("First sampling level"の、1/64、または1/256)を有するRobust adaptive sampler(ロバストアダプティブサンプラ)"を使う事で、滞る画像レンダリングを加速させて問題のある個所に焦点を合わせるのに役立つでしょう。"Anti-aliasing"の値が高くなると、"Pixel noise threshold"のデフォルト値が低くなりますが、レンダリング速度を上げるために、この値を増やす事も出来ます。

設定

Mainタブ

Reflectivity 反射率 反射率を上げる事でサーフェスの鏡面は環境光の影響を受け、より明るく変化します。このノードを追加する事で、『Default Shader』で行えなかった鏡面反射の効果を与える事が出来ます。
Reflection tint 反射の色調 反射時の色合いをコントロールします。
Index of refraction 屈折率 映り込みの強さと言う表現が相応しいです。他ソフトウエアでは「スペキュラ減衰」とも呼ばれます。このパラメータは、 フレネル反射 の演算用に使われます。数値が高い程鏡の効果を高めます。特に、水面や金属のサーフェスを表現する場合、高めの数値が有用で、またサーフェスの色によっても効果が異なります。
Specular highlights スペキュラハイライト ここではスペキュラ演算における分布関数の方法をポップアップから選択します:
-Blinn: "Legasy"とは異なる凸凹の反射演算としてマイクロファセット(微細サーフェス)の概念を取り入れているため、サーフェスの粗さに適応した鏡面反射に優れています。また、"Legasy"のフォン鏡面反射は、時間の掛かる反射ベクトルの演算を必要としますが、ブリンフォン鏡面反射では、ハーフベクトルと法線ベクトルがどれだけ近いかで、反射光の強度を計算します。これにより、フォン鏡面反射に比べ、全体的に粗い結果となります。
-Blinn-Beckmann:マイクロファセット斜面のガウス分布に基づいて広く使用されているマイクロファセット分布関数の考案者の名前から来ています。この演算は、ブリン演算とベックマン演算を複合させて行います。この演算は非常に正確な結果を返しますが、演算に伴うレンダリング時間も掛かります。サーフェス上の小さな凸凹は、光をあらゆる方向へ跳ね返します。完全平面であれば鏡のように同じ方向へ揃って反射されるために像がくっきりと映り込みますが、粗い場合は全体にぼやけた表現になります。
-Legacy: フォン鏡面反射は、局所的照明に基づくスペキュラモデルで、粗い凸凹のサーフェスのランバート反射と滑らかなサーフェスの鏡面反射を組み合わせて表現しています。滑らかなサーフェスでは小さく強い鏡面ハイライトが見られ、凸凹のサーフェスではハイライト部分が大きく徐々に弱まっていきます。
Highlight intensity ハイライトの強度 スペキュラハイライトの明るさをコントロールし、直接光源の反射にのみ適用され、シーンの他の部分には適用されません。
Specular roughness スペキュララフネス サーフェス上の粗さをコントロールします。0は完全平面で光沢効果が高まり、値が大きくなるにつれて艶消しのマット状態になります。
Roughness function ラフネス関数 光沢ラフネスをコントロールするためのFunctionやシェーダを指定する事が出来ます。
Ray traced reflections レイトレースによる反射 チェック時、反射にレイトレース法を用います。『Reflective Shader』を使用して微妙な反射や鏡面反射をサーフェスに追加する場合は、これを無効にする事をお勧めします。反射が微妙な場合は画像の違いに注意する必要がない上にレンダリング時間を短縮する事が出来ます。レイトレースによる反射がなくても、『Reflective Shader』はGIのプレパス(前処理)中に収集された情報を使用して周囲のオブジェクトの反射を近似し、TGはそれを調整して良い結果を得るでしょう。ただし、反射は『Enviro Light』の設定と『Render GI settingg』の"GI cache detail"と"GI sample quality"の影響を受けます。
このチェックは、『Render』の「Advanced」タブで"Path tracing on surfaces"を選択すると、有効/無効と関係なくレイトレースによる反射を用います。
Reflection softness 反射の柔らかさ 柔らかさは、鏡面効果の明瞭さをコントロールします。このパラメータは、"Ray traced reflections"が有効時のみ働きます。ただし、このパラメータは既知の不具合を生じさせる事があり、例えば0.004などの僅かな数値での取り扱いを心掛けて下さい。値が大きくなるとモザイク模様が描画されてしまいます。対処法として、「Quality」タブの"Number of sample"のサンプル数を増やし、『Render』の「Advanced」タブで"Path tracing on surfaces"を選択する事でモザイクの無い綺麗なレンダリングが行えます。


Qualityタブ

Number of sample サンプル数 ここで言うサンプル数とは「反射の柔らかさのための」サンプル数を意味します。サンプル数が多いほど、反射のレンダリング時に生じるゴミを低減する事が出来ますが、サンプル数に伴いレンダリング時間も増大するのでむやみに値を大きくしないで下さい。ただし、"Ray traced reflections"を無効のまま金属のような表現をする場合は多くのサンプル数を必要とします。また、数値が低いと反射の柔らかさも失われ継ぎ目を生じる原因にもなります。