要素コンポーネント シェーダ

以下に、レイヤ化パッケージに現在実装されているさまざまなサーフェス コンポーネント シェーダを示します。

拡散反射コンポーネント

拡散反射コンポーネントは、mia_material の拡散シェーディングと並び、MDL で定義された拡散反射の要素コンポーネントに非常によく似ています。より均等な光の拡散のために Oren-Nayer 粗さパラメータがあります。パラメータを以下に示します。

mila_diffuse_reflection
   "mila_diffuse_reflection" (
        color    "tint"        default 1 1 1,
        scalar   "roughness"   default 0,
        scalar   "quality"     default 1.0,          #: min 0 softmax 2.0

        scalar   "direct"      default 1.0,
        scalar   "indirect"    default 1.0
    )


tint
拡散カラーです。
roughness
(オーレン ネイヤー)の粗さを 0 (ゼロ)~1 に設定します。0 (ゼロ)は標準的なランバート シェーディングです。粗さの値を高く設定すると、サーフェスに「粉のような」外観が得られます。
direct
直接光の乗数です(通常は 1.0)。
indirect
間接照明の乗数です(通常は 1.0)。
"Mila 拡散詳細"のオン/オフ(文字列オプション、既定はオフ)
間接の詳細を有効にします。現状では、標準 FG と混合するパス トレースした FG を使用します。3.13 では、この機能よりも、新しい GI テクニックの使用を優先します。
quality/"Mila 拡散品質"
間接の詳細として投射されたサンプル数(FG レイの数)を決めるために使用されます。シェーダの局所品質よりも文字列オプションの使用を優先します。
"Mila 拡散詳細距離" (文字列オプション、既定値は 10.0)
FG レイが投射される距離。距離が短いほど高速ですが、間接の詳細の効果もそれだけ局所的になります。

光沢反射コンポーネント

光沢反射コンポーネントは、mia_material 反射シェーディングのほか、NVIDIA マテリアル記述言語(MDL)の光沢要素 BSDF に似ています。実際、この光沢反射コンポーネントは、mia_material が使用する光沢ではなく、MDL が使用する粗さの使用も採用します。特に、鏡のような反射が求められるサーフェス コンポーネントを完全に平滑化できるように、次の単純なスペキュラ反射コンポーネントが個別に用意されています。パラメータを以下に示します。

mila_glossy_reflection
   "mila_glossy_reflection" (
        color   "tint"                default 1 1 1,
        scalar  "roughness"           default 0.0, #: min 0.0 max 1.0
        scalar  "quality"             default 1.0, #: min 0.0 softmax 2.0
        
        scalar  "anisotropy"          default 1.0,
        scalar  "aniso_angle"         default 0,
        integer "aniso_channel"       default -1,

        boolean "use_max_dist"        default off,
        scalar  "max_dist"            default 0.0,
        boolean "use_max_dist_color"  default off,
        color   "max_dist_color"      default 0 0 0,

        scalar  "direct"              default 1.0,
        scalar  "indirect"            default 1.0
    )


tint
反射カラーです。
roughness
反射の原因となるマテリアルの粗さです。値の範囲は、0.0 (鏡のように平滑)から 1.0 (拡散など)までです。mia_material で光沢だったものを反転してコントロールすると考えることができます。このシェーダは、粗さが 0 より大きいときに使用するのが一般的です。直接光沢反射パスに書き込まれますが、粗さが 0 に設定されている場合はスペキュラ反射パスに書き込まれます。
品質/"Mila 光沢品質"
光沢反射に使用されるレイの数をコントロールします。レイの数は、粗さに基づき、さらにレイの重要度と組み合わせ、全コンポーネントに対するコンポーネントの重要度に基づいて調整されます。また、このローカル シェーダの値は、"Mila 光沢品質" というグローバル文字列オプションによっても乗算されます。つまり、単一のコントロールからシーン内のすべての光沢シェーダに影響を及ぼすことができます。このローカル入力でなく、グローバル文字列オプションの使用を優先します。
anisotropy
等方性反射では 1.0 です。実際の値は、V の反射に対する U の反射の比率です。つまり、1.0 より上の値と下の値の両方が有効だということで、これは反射の「U ベクトルのスケール係数」です。
aniso_angle
UV 空間の異方性反射の回転を定義し、aniso_channel は U 方向と V 方向を取得するテクスチャ マッピング チャネルを定義します。-1 に設定すると、オブジェクト空間に基づいて、既定の標準方向が計算されます(テクスチャ座標スペースには関連付けられません)。
use_max_dist
レイの長さを制限できます。これをオンにして、Max_Dist を 0 (ゼロ)以外に設定することにより、反射光線が実際に放射される距離を制限できます(パフォーマンスまたはエフェクトのために)。このようなレイは、環境カラー(use_max_dist_color がオフの場合)、または指定された max_dist_color(オンの場合)にフェードします。
"mila 内側に最大距離を使用"のオン/オフ(文字列オプション)
上記のオプションは、グラスのように光を通す物体の内部で光を内部的に反射させる場合にのみ使用します。これは色付きグラスの色を正しく表現するときに役立ちます。これを、光を通すコンポーネントの色に対する設定と同じにするのが一般的です。
"mila 単一環境サンプル"のオン/オフ(文字列オプション)
環境のマルチ サンプリングを実行する代わりに、単一の環境マップ サンプル(スペキュラ反射の方向で取得)を使用することを光沢反射に伝達するための文字列です。これは、環境ルック アップ(mia_envblur など)のプリ フィルタ処理を行うシェーダとの組み合わせで使用されます。mia_envblur については、建築用シェーダ ライブラリのマニュアルを参照してください。
"mila 視覚領域のハイライトを使用"のオン/オフ(文字列オプション)
mans が低い複数の重要度によるサンプリングの実装を有効にします。反射のトレースとライト サンプリングのバランスを取ります。
"mila 視覚領域のハイライト" 0.0-1.0 (文字列オプション)
可視エリア ライトの反射と光サンプリングによるスペキュラ反射を分離する動作を定義します。
-1
(既定値かつ推奨)自動ヒューリスティックは、光沢に応じて値を決定するために使用されます。
0.0
可視エリア ライトは、スペキュラ ハイライトを生成するのではなく、反射で 100 % 表示されます。これは、光沢度が高いサーフェスや鏡面反射サーフェス、広い範囲のエリア ライトに適しています(エリア ライトは光沢のある円錐と比べて、常により広い範囲の角度をカバーします)。
1.0
可視エリア ライトは、従来の光沢/スペキュラ ハイライトを生成し、反射レイには見えません。これは、光沢度が低く、エリア ライトが小さいサーフェスに適しています。
0.0 > X > 1.0
0.0 より大きく、1.0 より小さい値は、2 種類の反射をブレンドしたものです。これらは、総エネルギーが正確になるように調整されます。
このパラメータの詳細については、「技術情報」ページにあります。
"mila 粗さ指数" 既定値 3.0 (文字列オプション)
カーブを定義して視覚的な粗さの割り当て方法を決めます。既定値 3.0 では、粗さの変化が見た目でおおよそ直線的になりますが、これはかなり主観的な問題であり、以後の色処理に依存する可能性もあるため、ここで調整可能にしています。

左: スペキュラ(glossiness = 1.0)中央: 光沢 右: テクスチャマッピングをかけた光沢
左: スペキュラ(glossiness = 1.0)
中央: 光沢
右: テクスチャマッピングをかけた光沢

スペキュラ反射コンポーネント

スペキュラ反射コンポーネントは、鏡のような反射になります。これは、光沢が 1 に設定されている場合、mia_material の反射シェーディングと同様になります。また、MDL で使用されるスペキュラ要素 BSDF にも関連します。パラメータを以下に示します。

mila_specular_reflection
    "mila_specular_reflection" (
        color   "tint"               default 1 1 1,

        boolean "use_max_dist"       default off,
        scalar  "max_dist"           default 0.0,
        boolean "use_max_dist_color" default off,
        color   "max_dist_color"     default 0 0 0,

        scalar  "direct"             default 1.0,
        scalar  "indirect"           default 1.0
    )


tint
反射カラーです。
use_max_dist
レイの長さを制限できます。これをオンにして、Max_Dist を 0 (ゼロ)以外に設定することにより、反射光線が実際に放射される距離を制限できます(パフォーマンスまたはエフェクトのために)。このようなレイは、環境カラー(use_max_dist_color がオフの場合)、または指定された max_dist_color(オンの場合)にフェードします。
"Mila 内側に最大距離を使用"のオン/オフ(文字列オプション)
上記のオプションは、グラスのように光を通す物体の内部で光を内部的に反射させる場合にのみ使用します。これは色付きグラスの色を正しく表現するときに役立ちます。これを、光を通すコンポーネントの色に対する設定と同じにするのが一般的です。

光沢透過コンポーネント

mia_material の屈折部分と基本的に同じものとして実装されます。前述のように、詳細はアーキテクチャル ライブラリのドキュメントを参照してください。

mila_glossy_transmission
    "mila_glossy_transmission" (
        color   "tint"                default 1 1 1,
        scalar  "roughness"           default 0.0, #: min 0.0 max 1.0
        scalar  "quality"             default 1.0, #: min 0.0 softmax 2.0
        scalar  "ior"                 default 1.2,
        
        scalar  "anisotropy"          default 1.0,
        scalar  "aniso_angle"         default 0,
        integer "aniso_channel"       default -1,

        boolean "use_max_dist"       default off,
        scalar  "max_dist"           default 0.0,
        boolean "use_max_dist_color" default off,
        color   "max_dist_color"     default 0 0 0,
        
        scalar  "direct"        default 1.0,
        scalar  "indirect"      default 1.0
    )


tint
サーフェスで透過/屈折に適用されるカラーです(透明オブジェクトの配色をモデル化する簡易的方法 - 詳細は後述)。
roughness
透過の原因となるマテリアルの粗さです。0.0 (平滑な鏡と同じ) から 1.0 (拡散) の範囲で設定できます。
quality
光沢透過に使用されるレイの数をコントロールします。レイの数は、粗さに基づき、さらにレイの重要度と組み合わせ、全コンポーネントに対するコンポーネントの重要度に基づいて調整されます。また、このローカル シェーダの値は、"Mila 光沢品質" というグローバル文字列オプションによっても乗算されます。つまり、単一のコントロールからシーン内のすべての光沢シェーダに影響を及ぼすことができます。
ior
サーフェスの屈折のインデックスです。レイが(法線ベクトルの定義に従って)オブジェクトの内側から外側に移動し、それに含まれる mila_materialthin_walled パラメータが設定されていない場合、この値の逆数が使用されます。
anisotropy
等方性屈折では 1.0 です。実際の値は、屈折ローブの V の広がりに対する U の広がりの比率です。つまり、1.0 より上の値と下の値の両方が有効だということで、これは屈折の「U ベクトルのスケール係数」です。
aniso_angle
UV 空間の異方性反射の回転を定義し、aniso_channel は U 方向と V 方向を取得するテクスチャ マッピング チャネルを定義します。-1 に設定すると、オブジェクト空間に基づいて、既定の標準方向が計算されます(テクスチャ座標スペースには関連付けられません)。
use_max_dist
レイの長さを制限できます。これをオンにして、max_dist を 0 (ゼロ)以外に設定することにより、屈折レイが実際に放射される距離を制限できます(パフォーマンスまたはエフェクトのために)。またボリュームの減衰エフェクトを適切にモデル化することもできます。use_max_dist_color をオフにすると、屈折レイは黒にフェードします(その後完全に停止して、パフォーマンスを向上させます)。use_max_dist_color がオンの場合、レイは吸収媒体の中を貫通したときのように、max_dist の 2 倍移動すると 2 倍減衰するなど、max_dist を通過して max_dist_color にフェードし、急激に減衰します。これは、サーフェスの色を変更するよりも、色の付いた屈折をモデル化するための非常に現実的な方法です。これについては、mia_material のドキュメントで詳細に説明します。
"Mila アルファを伝播" オン/オフ、mila_transparency の既定はオン(文字列オプション)
オンの場合、透明を貫通してバックグラウンドのアルファを渡します。これは場合によって役に立つことがありますが、合成を使用するほとんどの場合、本当に実行したい処理はむしろ mila_glossy_transmissionmila_transparency に置き換えることです。つまり、非明示的に常にアルファが(さらに他のすべてのフレームバッファも)貫通します。

左: スペキュラ(glossiness = 1.0)中央: 光沢 右: ボリュームの減衰を使用
左: スペキュラ(glossiness=1.0)
中央: 光沢とサーフェスの配色
右: ボリュームの減衰を使用

スペキュラ透過コンポーネント

mia_material の屈折部分と基本的に同じものとして実装されます。前述のように、詳細はアーキテクチャル ライブラリのドキュメントを参照してください。

mila_specular_transmission
    "mila_specular_transmission" (
        color   "tint"               default 1 1 1,
        scalar  "ior"                default 1.2,
        
        boolean "use_max_dist"       default off,
        scalar  "max_dist"           default 0.0,
        boolean "use_max_dist_color" default off,
        color   "max_dist_color"     default 0 0 0,
        
        scalar  "direct"             default 1.0,
        scalar  "indirect"           default 1.0
    )


tint
サーフェスで透過/屈折に適用されるカラーです(透明オブジェクトの配色をモデル化する簡易的方法 - 詳細は後述)。
ior
サーフェスの屈折のインデックスです。レイが(法線ベクトルの定義に従って)オブジェクトの内側から外側に移動していて、それに含まれる mila_materialthin_walled パラメータが設定されていない場合、この値の逆数が使用されます。
use_max_dist
レイの長さを制限できます。これをオンにして、max_dist を 0 (ゼロ)以外に設定することにより、屈折レイが実際に放射される距離を制限できます(パフォーマンスまたはエフェクトのために)。またボリュームの減衰エフェクトを適切にモデル化することもできます。use_max_dist_color をオフにすると、屈折レイは黒にフェードします(その後完全に停止して、パフォーマンスを向上させます)。use_max_dist_color がオンの場合、レイは吸収媒体の中を貫通したときのように、max_dist の 2 倍移動すると 2 倍減衰するなど、max_dist を通過して max_dist_color にフェードし、急激に減衰します。これは、サーフェスの色を変更するよりも、色の付いた屈折をモデル化するための非常に現実的な方法です。これについては、mia_material のドキュメントで詳細に説明します。


透明度コンポーネント

透明度(屈折ではなく、光が直線的に進む透明)

mila_transparency
   "mila_transparency" (
       color  "transparency" default 1 1 1
   )
transparency
サーフェスの透明度を定義します。薄い壁で使用されるのが一般的です。このとき、その上の反射レイヤで方向に依存したフレネル ウェイトを使用します。それは、薄いガラス状のサーフェスをモデル化します。薄い壁で仕切られていない場合、フレネルの外側のレイヤと混合するときは、透明にすること、すなわち一直線の光線は、物理的には成立しません。それはマテリアルの屈折インデックスが不整合になるためです。一方、薄い壁で仕切られている場合、マテリアルの内部は ior = 1.0 だとみなすことができ、したがって透明度は鏡面透過の代用としては有効です。

透明度と透過/屈折

レイヤ化シェーダに関しては、透明屈折概念的な違いを理解することが重要です。

また、透過と透明には非常に重要な技術的な違いがあります。透過は実際のシェーダ mila_glossy_transmission によって実装されるのに対し、透明はルート ノード mila_material で実装され(「フレームバッファ」のページで説明)、シェード ツリーにメタ情報として実際に伝播されます。

ただしこれは、エンド ユーザにとってはほとんど問題になりません。エンド ユーザから見た場合、重要な違いは、透明度はレイをまっすぐ貫通させる場合にいつでも使用できることです。使用例を次に示します。

たとえば、中空ではないガラス球体の作成する場合、フレネルでウェイトを付けたスペキュラ反射コンポーネントを、屈折するスペキュラ透過コンポーネントの上に重ねてから適用することになります。中空のガラス球体(ヘリコプターの操縦室や石けんの泡)を作成する場合は、同様のフレネルでウェイト付けした反射コンポーネントを、透明コンポーネントの上に適用します。この 2 つの違いは、mia_materialthin_walled パラメータを使用する場合と似ています。

左: 完全に透明(何も表示されません)中央: テクスチャ マッピングされた透明、右: 薄壁エフェクトに透明を使用
左: 完全に透明(見えない)
中央: カットアウトとして使うテクスチャ マッピングされた透明、
右: 薄壁エフェクトに透明を使用


拡散透過(半透明)コンポーネント

mia_material の半透明と基本的に同じものとして実装されます。

mila_diffuse_transmission
   "mila_diffuse_transmission" (
        color   "tint"         default 1 1 1,
        scalar  "roughness"    default 0,
        scalar  "quality"      default 1.0,          #: min 0 softmax 2.0

        scalar  "direct"       default 1.0,
        scalar  "indirect"     default 1.0
    )

これはフェース上で拡散透過だけを実行する非常にシンプルなシェーダです。後面からのライトが貫通する「薄い」ジオメトリでのみ有効です。

tint
サーフェスの後面から前面へ移動する拡散ライトの量です。
indirect
間接照明のパーセント(通常は 1.0)です。
半透明(四角形オブジェクトのみ): シンプルな拡散伝送
半透明(四角形オブジェクトのみ): シンプルな拡散伝送

放出コンポーネント

シェーディングに別の色を追加できサーフェスから放射が起きているかのような効果が得られます。

mila_emission
   "mila_emission" (
       color    "tint"         default 1 1 1,
       scalar   "intensity"    default 10
   )

これは、定数を追加するだけの非常にシンプルなシェーダですが、結合可能な方法で追加します。それ以上複雑な処理は行わず、FG がオンの場合、「放出された」光の選択だけが行われます。

color
放出された(追加された)光の色です。
intensity
強度です。
放出: シンプルな色の追加
放出の例
左: 放出のみ
中央: 上部での放出、グリッド内の放出
右: 最下層レベルでの放出、クラックからの浸出。爆発する惑星など。

サブサーフェス散乱コンポーネント

これは、サブサーフェス散乱の新しい実装です。レンダリングしたときの外観が misss_fast_shader2 に似ていますが、ライト マップは使用していません

古い SSS シェーダでライトマップを使用すると、以下に示す複数の理由で問題が発生します。

このサブサーフェス散乱(SSS)シェーダは、「遅延評価」という手法を使用しています。この手法は、レンダリング時にすべてのコアがアクセスできる再充填可能なバッファ内に、光を一時的に保存(キャッシュ)します。したがって、同じ光を(バッファ サイズ超過のため) 2 度計算する必要がある場合であっても、それを複数のコアで並列処理することができます。このため、古いシェーダでも計算済みのライトマップを使えば、ライトマップ計算後の処理が速くなる可能性はありますが、多くの場合はこれらの新しい SSS シェーダ(同じ情報をオンザフライで計算する)のほうが、すべてのコアを適切に活用できるため、最終的な処理を早く終わらせることができます。

このため、すべてのパラメータは、ライト マップとシェーディング フェーズに分割されるのではなく、古い misss_fast* シェーダの動作と同じように、1 つのシェーダ内に存在することになります。

現在ではほとんどの場合、このシェーダは SSS を実行するために優先される方法で、レイヤ化、特にスキン レンダリングを効率的に実行する場合は、一般的に古い misss_fast* シェーダ セットから移行することをお勧めします。詳細は、「チュートリアル」ページを参照してください。

mila_scatter
    "mila_scatter" (
        color   "front_tint"       default 1.0 1.0 1.0,
        scalar  "front_weight"     default 1.0,
        vector  "front_radius"     default 20 10 5,
        color   "front_radius_mod" default 1 1 1,
        
        color   "back_tint"        default 1.0 1.0 1.0,
        scalar  "back_weight"      default 1.0,
        vector  "back_radius"      default 20 10 5,
        color   "back_radius_mod"  default 1 1 1,
        scalar  "back_depth",      # unassigned (zero) means "same as radius"
        
        scalar  "sampling_radius_mult"  default 2.0,
        
        scalar  "light_storage_gamma"   default 0.75,
        scalar  "scale_conversion"      default 1.0,
        
        integer "resolution"            default 2,
        scalar  "quality"               default 1.0,

        scalar  "direct"                default 1.0,
        scalar  "indirect"              default 1.0
    )

新しいシェーダでも、古い misss_fast* シェーダと同じ、「前面」と「後面」への分割が使われています(「前面」と「後面」の詳細については、「サブサーフェス」ライブラリのマニュアルを参照してください)。ただし、日常的なほとんどのケースではこれらを同じ値に設定するでしょう。スキャッタリングの配色は現在、色ごとのスキャッタリング半径を使って実行されます。そのため、たとえば、赤は自動的により遠くにスキャッタされます。つまり、「後面の」赤いスキャッタリングは手動で作成するのではなく、自動的に発生するということです。<&p>

これは、このシェーダが今でも、スクリーン ベースの座標空間で本質的に動作することも意味します。新しいパラメータの動作は「物理的な」スキャッタリングに非常に近くなりましたが、このシェーダはなお「トリック」に近いもので、物理的に完全に正確というよりは、視覚的に非常にリアルなものといえます。

パラメータを以下に示します。

front_tint
front_weight
「前方」の散乱のカラーとウェイト(量)です。ウェイトの値は一般的に 1.0 のままにします。その理由は、通常コントロールする対象はこれではなく、その中にある mila_layer の量だからです。
front_radius
赤、緑、青のそれぞれの光に対応する 3 つの異なる半径を持つベクトルです。一般に、赤の散乱が最も大きく、緑の散乱はそれより小さく、青の散乱は非常に小さくなります。 以前の misss_fast_shader シェーダと異なり、指数関数的に減衰します。突然停止することはありません。そのため、ここで設定されている値は、光が元の強度の 10 % にまで減衰したときの距離です、光の強度がゼロになるところではありません。
front_radius_mod
散乱半径を変更するためのカラー パラメータです。このパラメータは、サーフェス上の散乱半径を変更するためのテクスチャ マップを容易に適用できるようにするために用意されています。このテクスチャは通常の白~黒の範囲内で変化させることができ、front_radius パラメータで設定された値がそれに乗算されます。
back_tint
back_weight
back_radius
back_radius_mod
back_depth
front_* 形式のパラメータと同様の動作をします。唯一の違いは、散乱の「深度」を定義する back_depth パラメータがあることです。既定は 0.0 で、この場合、スキャッタリングは均一です(深度と左右の両方で同じ距離に達する)。
sampling_radius_mult
front_radius または back_radius のいずれかで設定された最大半径の乗数です。サンプルを実際に取得する範囲を定めるために使用されます。そのため、これらの半径のうち最大のものがたとえば 10 単位である場合、このパラメータを 2.0 に設定すると、サンプルは実際には 20 単位の距離の範囲内から取得され、この半径の外側にある光は完全に無視されます。 この値が小さすぎる場合、目に見える激しい遮断が散乱に生じることがあります。 この値が大きすぎる場合、成分が極めて小さい遠く離れたサンプルが取得されるため、非常に多くのサンプルが無駄になります。減衰は指数関数的で、散乱半径パラメータは「成分が 10 % になるまでの距離」として定義されるため、最も遠くのサンプルには、10 % をこのパラメータの値で累乗したウェイトがかけられます(このパラメータの値が 2 の場合は 1 %、3 の場合は 0.1 %、4 の場合は 0.01 % など)。
light_storage_gamma
光線がシェーダによって格納される前に、拡散角度配分(通常はランバート コサイン)に適用されます。通常、この値は 1 よりわずかに小さくなりますが、コサイン関数が累乗される乗数です。1 未満の値でコサインを累乗すると、「平坦化」が行われ、バルジは「より広く」なり、光線が拡散します。これは、スキャッタリングの見かけ上のシミュレーションに役立ちます。既定値は 0.75 です。古い misss_fast... シェーダを使用すると、この値は misss_lambert_gamma で使用されるガンマ値と等しくなります。
scale_conversion
実際のシーン単位に指定された値をマッピングするために、特定の半径測定に適用される分割です。たとえば front_radius を 10,5,2 に設定し、scale_conversion を 10 に設定すると、使用される有効半径が 1,0.5,0.2 になります。
indirect
シェーダに達するすべての間接照明に適用される乗数です。
resolution
光線ストレージの実際の解像度を定義します。ストレージはスクリーン スペースで大まかに行われます。1 は「レンダリングと同じ解像度」、2 は「半分の解像度」、 3 は「1/3 の解像度」などとなります。0 (ゼロ)は特殊なケースで「2 倍の解像度」を意味します。既定は 2 (1/2 の解像度)で、ほとんどの場合、この値で十分です。3.13 に新たに追加された、特殊な値 -1 を使用すると、以前に格納された値から補間しなくても、各交差にブルート フォース計算が行われます。これは極端にクローズアップする場合に便利です。
quality/"Mila 散乱品質" (文字列オプション)
保存されている光線の値のマップに取り込むサンプルの数をコントロールします。局所品質よりもグローバル文字列オプションの使用を優先します。さらに最適化を追求する場合、トレース深度やその他の考慮事項の影響を受ける可能性もありますまた、sampling_radius_mult パラメータの影響がきわめて大きいことにも注意してください。多くの場合、これを上げないほうがよいでしょう。既定値の 2 を使用すると、フィルタのウェイトが 1% の部分に関し前方または後方の最大半径距離の 2 倍の位置でサンプルを取ります。

左: SSS レイヤのみ中央: SSS + 拡散(バンプを表示するため) 右: SSS + 拡散 + 反射
左: SSS のみ
中央: SSS + 拡散(バンプを表示するため)
右: SSS + 拡散 + 反射