車の塗装の完全なエフェクトを作成するには、このシェーダと[mi_metallic_paint]シェーダおよび[mi_bump_flakes]シェーダを組み合わせます。これらの接続をすべて自動的に行うには、汚れのレイヤもサポートする mi_car_paint_phen シェーダを使用します。
このシェーダと[mib_glossy_refraction]シェーダの使用方法については、「mib_glossy_reflection_phong_phen」を参照してください。
名前(Name) |
Render Tree に表示されるシェーダ ノードの名前。任意の名前を入力するか、デフォルト名を使用します。 |
base_material |
色素レイヤとメタリックのフレークを定義するシェーダを選択します。これが[mi_metallic_paint]シェーダの目的です。 |
reflection_color |
反射の強度(およびカラー)です。計算された反射とこの値が乗算されます。 車の塗装の仕上げレイヤでは、通常、このカラーは白です。 |
max_distance |
反射レイの範囲を制限します。 レイの最大距離を 0.0 に設定すると、反射レイの範囲は無限になります。0.0 より大きな値に設定すると、反射レイの範囲はこの距離に制限され、レイの長さがこの距離に近づくにつれ、反射カラーは環境カラーにフェード アウトしていきます。[max_distance]を使用すると、パフォーマンスを向上させ、その距離内にあるコントラストの高いオブジェクトによって発生する過度なノイズを減らすことができます。 |
減衰(falloff) |
環境にフェードインする場合のレートです。既定値 2.0 は、減衰が距離の二乗であることを意味します。さらに、値 3.0 は距離の三乗、などと続きます。[max_distance]が 0.0 の場合、このパラメータは無効になります。 |
environment_color |
レイがオブジェクトをヒットせず、環境をヒットする場合の乗数。物理的に正確に言えば、この値は[反射カラー]と一致すべきですが、オブジェクトの反射と環境の反射の間の輝度のバランスをとる場合のコントロールをより詳細にするため、個別に設定されています。 |
reflection_base_weight |
カメラに面しているサーフェイスの反射の強度を定義する乗数。0.1~0.3 の低い値に設定します。 |
reflection_edge_weight |
カメラ(エッジ)に対して垂直なサーフェイスの反射の強度を定義する乗数。塗装仕上げの反射は、面しているサーフェイスよりエッジでの方が多くなりがちです。この現象は、「フレスコ エフェクト」と呼ばれます。 |
edge_factor |
反射するエッジの狭さを定義します。 |
environment |
使用する環境マップ シェーダを選択します。 |
single_env_sample |
オフにすると、各反射レイの環境サンプルが作成されます。対象となるレイは、[max_distance]オプションを使用するためオブジェクトにヒットしないものか、環境とミックスする必要があるものです。オンにすると、これらの反射レイについて、環境が一度だけサンプリングされます。 |
サンプル(samples) |
使用するサンプルの数を設定します。理想的には、2 の累乗にします。0.0 の場合、シェーダは単一のサンプル ミラー反射だけに戻ります。 |
u_spread |
U 方向に実行される法線ベクトル摂動の量。 [U 拡散]および[V 拡散]の値が同じ場合、等方性のある光沢反射が生成されます。この 2 つの値が異なる場合、異方性モードがオンになります。 |
v_spread |
V 方向に実行される法線ベクトル摂動の量。 [U 拡散]および[V 拡散]の値が同じ場合、等方性のある光沢反射が生成されます。この 2 つの値が異なる場合、異方性モードがオンになります。 |
u_axis |
異方性の U 方向を指定するオプション パラメータです。いずれも異方性モードでのみ適用されます。 u_axis が 0,0,0 である場合は、シェーダはサーフェイスの最初の導関数ベクトルに基づいて既定のベクトルを生成しようと試み、そのようなベクトルがない場合はオブジェクト空間の X 軸に基づいて生成します。 u_axis に値が指定されている場合は、異方性の U 方向として使用されます。 |
v_axis |
異方性の V 方向を指定するオプション パラメータです。いずれも異方性モードでのみ適用されます。 [v_axis]が指定されている場合は V 方向として使用されますが、指定されていない場合は、V 方向は元のサーフェイス法線と U 方向の外積として計算されます。 |
拡散(dispersion) |
0.0(色収差なし)から 1.0(全色収差)までの範囲です。 |
[dispersion]パラメータがゼロ以外である場合にカラーの分割先となる「虹」を定義するカラーの配列を作成します。既定では、赤 - 黄 - 白 - シアン - 青 - インディゴの各カラーですが、任意のカラーに変更できます。
[mib_glossy_reflection]シェーダと[mib_glossy_refraction]シェーダを使用すると、光沢のある(ぼかしのかかった)反射および屈折を生成できます。これらのシェーダと物理 DGS シェーダとのパフォーマンスおよび有用性の相違点をまとめると、以下のようになります。
DGS シェーダは、イメージ全体のオーバー サンプリングによって(パフォーマンスの低下を伴いながらも)魅力的なブラーに使用するサンプルを平均化するために、反射および屈折に使用する単一の光沢のレイを放出します。すべてのレイは新しい独立したサンプルです。
一方、mib_glossy_* シェーダは複数の光沢のレイをサンプリングし、イメージ全体ではなく、光沢のあるサーフェイス上でのみオーバーサンプリングを発生させます。サンプルは mental ray の厳密なサンプリング エンジンを使用して作成されるため、サンプル数が同じでも、より外観の良いブラーを作成可能な、より魅力的なサンプル パターンを作成することができます。
DGS(左)と mib_glossy_reflection(右)
上の図はサンプル[0,1]を使用してレンダリングしたもので、左側の図では、粗い結果がはっきりと見えます。滑らかな結果を得るには、イメージ全体のサンプリングを増加させる必要があります。一方、mib_glossy_* シェーダはそれ自体のオーバーサンプリング(この例では 8 サンプル)を処理し、光沢のあるサーフェイスだけに適用します。
反射の場合は厳密に言うと非物理的ですが、mib_glossy_* シェーダでは反射レイおよび屈折レイの到達する距離を制限することができます。このため、距離がある反射/屈折オブジェクトによって発生するイメージ ノイズを排除し、パフォーマンスを大幅に改善することができます。
mib_glossy_* シェーダの目的の 1 つに、遠方にあるオブジェクトをフィルタリングし、マテリアル(屈折の場合)または環境(反射の場合)と置き換えることによって、遠くのイメージをあまり詳細にしないということがあります。しかし、たとえば環境のサンプリングからの過度のノイズを回避するために、反射シェーダは意図的に環境を単一サンプリングして(また事前にブラーをかけておいた環境を明示的に渡されることによって)ノイズを除去することができます。
シェーダは明示的に渡された UV ベクトルを使用して光沢のある異方性反射/屈折を行うことができますが、ベクトル自体が失われている(0,0,0 に設定されている)場合は、検知したベクトルについてシェーダ自身が計算を試みます。
DGS シェーダはスペキュラの反射方向または屈折方向を計算し、shiny パラメータによって決定される範囲内でこの方向を摂動させます。一方、mib_glossy_* シェーダは、反射または屈折の前に、サーフェイスにマイクロファセットが存在するかのように光沢をシミュレートします。つまり、反射方向または屈折方向は、法線ベクトルを実際に摂動させる(微細なレベルで粗いサーフェイスをシミュレート)ことによって計算され、変更後の法線に基づいて新しい反射方向または屈折方向を計算します。
これによって異なる結果が生じ、光沢がビュー方向に依存することになります。たとえば、床における反射の光沢パターンは垂直方向に引き伸ばされます。これは、日没時に太陽光が水面に反射すると、太陽光が伸びていくように見えるのと同じエフェクトです。