BSDF Shader と Light Path (Roughness 変化込み)

各 BSDF シェーダがどのような成分を作るのかを視覚化するために、各 BSDF シェーダ と Light Path との関係をテストしてみました。

テストモデル

テストモデル空間の環境は以下の通りです。
  • World に Light Path ノードを絡ませ、指定した Ray に反応した部分が赤くなり、そうでない部分が青くなります
  • Floor (床面) は、マンセル N9.5 相当の白 (Hex:1C1C1C)
  • 光源は Light Path ノードが絡んだ World のみ
テスト使用データ : BSDF_Shader_Test2.zip
いずれも Full Global Illumination プリセットで、200 Samples を GPU にてレンダリングしました。
また、粗さ (Roughness) を変更することでレイタイプの割合に変更がでてくるシェーダでは粗さを変えもテストしてみました。

Diffuse BSDF

  Roughness 0.0
通常の World Shader_Diffuse_nomal.png
Is Camera Ray Shader_Diffuse_caRay.png
Is Shadow Ray Shader_Diffuse_shRay.png
Is Diffuse Ray Shader_Diffuse_diRay.png
Is Glossy Ray Shader_Diffuse_glRay.png
Is Singular Ray Shader_Diffuse_siRay.png
Is Reflection Ray Shader_Diffuse_reRay.png
Is Transmission Ray Shader_Diffuse_trRay.png

Glossy BSDF

Glossy BSDF にある 3 つの Distribution は、それぞれで Ray の処理が異なったため、3 タイプ共テストしました。
また、Roughness を変えることでも雰囲気が変わりましたので、Roughness を 0.0、0.5、1.0 としてテストしました。

Distribution での比較

以下は、同じ Roughness で各 Distribution がどのように異なるかを比べるように並べてあります。
Roughness 0.0 Beckmann GGX Sharp
通常の World Shader_GlossyB_nomal.png Shader_GlossyG_nomal.png Shader_GlossyS_nomal.png
Is Camera Ray Shader_GlossyB_caRay.png Shader_GlossyG_caRay.png Shader_GlossyS_caRay.png
Is Shadow Ray Shader_GlossyB_shRay.png Shader_GlossyG_shRay.png Shader_GlossyS_shRay.png
Is Diffuse Ray Shader_GlossyB_diRay.png Shader_GlossyG_diRay.png Shader_GlossyS_diRay.png
Is Glossy Ray Shader_GlossyB_glRay.png Shader_GlossyG_glRay.png Shader_GlossyS_glRay.png
Is Singular Ray Shader_GlossyB_siRay.png Shader_GlossyG_siRay.png Shader_GlossyS_siRay.png
Is Reflection Ray Shader_GlossyB_reRay.png Shader_GlossyG_reRay.png Shader_GlossyS_reRay.png
Is Transmission Ray Shader_GlossyB_trRay.png Shader_GlossyG_trRay.png Shader_GlossyS_trRay.png

Roughness 0.5 Beckmann GGX
通常の World Shader_GlossyB_nomal0.5.png Shader_GlossyG_nomal0.5.png
Is Camera Ray Shader_GlossyB_caRay_0.5.png Shader_GlossyG_caRay_0.5.png
Is Shadow Ray Shader_GlossyB_shRay_0.5.png Shader_GlossyG_shRay_0.5.png
Is Diffuse Ray Shader_GlossyB_diRay_0.5.png Shader_GlossyG_diRay_0.5.png
Is Glossy Ray Shader_GlossyB_glRay_0.5.png Shader_GlossyG_glRay_0.5.png
Is Singular Ray Shader_GlossyB_siRay_0.5.png Shader_GlossyG_siRay_0.5.png
Is Reflection Ray Shader_GlossyB_reRay_0.5.png Shader_GlossyG_reRay_0.5.png
Is Transmission Ray Shader_GlossyB_trRay_0.5.png Shader_GlossyG_trRay_0.5.png

Roughness 1.0 Beckmann GGX
通常の World Shader_GlossyB_nomal1.png Shader_GlossyG_nomal1.png
Is Camera Ray Shader_GlossyB_caRay_1.png Shader_GlossyG_caRay_1.png
Is Shadow Ray Shader_GlossyB_shRay_1.png Shader_GlossyG_shRay_1.png
Is Diffuse Ray Shader_GlossyB_diRay_1.png Shader_GlossyG_diRay_1.png
Is Glossy Ray Shader_GlossyB_glRay_1.png Shader_GlossyG_glRay_1.png
Is Singular Ray Shader_GlossyB_siRay_1.png Shader_GlossyG_siRay_1.png
Is Reflection Ray Shader_GlossyB_reRay_1.png Shader_GlossyG_reRay_1.png
Is Transmission Ray Shader_GlossyB_trRay_1.png Shader_GlossyG_trRay_1.png

Roughness での比較

以下は、各 Distribution で Roughness の変化がどのように影響するかを比べるように並べてあります。
Beckmann Roughness 0.0 Roughness 0.5 Roughness 1.0
通常の World Shader_GlossyB_nomal.png Shader_GlossyB_nomal0.5.png Shader_GlossyB_nomal1.png
Is Camera Ray Shader_GlossyB_caRay.png Shader_GlossyB_caRay_0.5.png Shader_GlossyB_caRay_1.png
Is Shadow Ray Shader_GlossyB_shRay.png Shader_GlossyB_shRay_0.5.png Shader_GlossyB_shRay_1.png
Is Diffuse Ray Shader_GlossyB_diRay.png Shader_GlossyB_diRay_0.5.png Shader_GlossyB_diRay_1.png
Is Glossy Ray Shader_GlossyB_glRay.png Shader_GlossyB_glRay_0.5.png Shader_GlossyB_glRay_1.png
Is Singular Ray Shader_GlossyB_siRay.png Shader_GlossyB_siRay_0.5.png Shader_GlossyB_siRay_1.png
Is Reflection Ray Shader_GlossyB_reRay.png Shader_GlossyB_reRay_0.5.png Shader_GlossyB_reRay_1.png
Is Transmission Ray Shader_GlossyB_trRay.png Shader_GlossyB_trRay_0.5.png Shader_GlossyB_trRay_1.png

GGX Roughness 0.0 Roughness 0.5 Roughness 1.0
通常の World Shader_GlossyG_nomal.png Shader_GlossyG_nomal0.5.png Shader_GlossyG_nomal1.png
Is Camera Ray Shader_GlossyG_caRay.png Shader_GlossyG_caRay_0.5.png Shader_GlossyG_caRay_1.png
Is Shadow Ray Shader_GlossyG_shRay.png Shader_GlossyG_shRay_0.5.png Shader_GlossyG_shRay_1.png
Is Diffuse Ray Shader_GlossyG_diRay.png Shader_GlossyG_diRay_0.5.png Shader_GlossyG_diRay_1.png
Is Glossy Ray Shader_GlossyG_glRay.png Shader_GlossyG_glRay_0.5.png Shader_GlossyG_glRay_1.png
Is Singular Ray Shader_GlossyG_siRay.png Shader_GlossyG_siRay_0.5.png Shader_GlossyG_siRay_1.png
Is Reflection Ray Shader_GlossyG_reRay.png Shader_GlossyG_reRay_0.5.png Shader_GlossyG_reRay_1.png
Is Transmission Ray Shader_GlossyG_trRay.png Shader_GlossyG_trRay_0.5.png Shader_GlossyG_trRay_1.png

Sharp Roughness 0.0
通常の World Shader_GlossyS_nomal.png
Is Camera Ray Shader_GlossyS_caRay.png
Is Shadow Ray Shader_GlossyS_shRay.png
Is Diffuse Ray Shader_GlossyS_diRay.png
Is Glossy Ray Shader_GlossyS_glRay.png
Is Singular Ray Shader_GlossyS_siRay.png
Is Reflection Ray Shader_GlossyS_reRay.png
Is Transmission Ray Shader_GlossyS_trRay.png

Glass BSDF

Glass BSDF にある 3 つの Distribution は、それぞれで Ray の処理が異なったため、3 タイプ共テストしました。
また、Roughness を変えることでも雰囲気が変わりましたので、Roughness を 0.0、0.5、1.0 としてテストしました。

Distribution での比較

以下は、同じ Roughness で各 Distribution がどのように異なるかを比べるように並べてあります。
Roughness 0.0 Beckmann GGX Sharp
通常の World Shader_GlassB_nomal.png Shader_GlassG_nomal.png Shader_GlassS_nomal.png
Is Camera Ray Shader_GlassB_caRay.png Shader_GlassG_caRay.png Shader_GlassS_caRay.png
Is Shadow Ray Shader_GlassB_shRay.png Shader_GlassG_shRay.png Shader_GlassS_shRay.png
Is Diffuse Ray Shader_GlassB_diRay.png Shader_GlassG_diRay.png Shader_GlassS_diRay.png
Is Glass Ray Shader_GlassB_glRay.png Shader_GlassG_glRay.png Shader_GlassS_glRay.png
Is Singular Ray Shader_GlassB_siRay.png Shader_GlassG_siRay.png Shader_GlassS_siRay.png
Is Reflection Ray Shader_GlassB_reRay.png Shader_GlassG_reRay.png Shader_GlassS_reRay.png
Is Transmission Ray Shader_GlassB_trRay.png Shader_GlassG_trRay.png Shader_GlassS_trRay.png

Roughness 0.5 Beckmann GGX
通常の World Shader_GlassB_nomal0.5.png Shader_GlassG_nomal0.5.png
Is Camera Ray Shader_GlassB_caRay_0.5.png Shader_GlassG_caRay_0.5.png
Is Shadow Ray Shader_GlassB_shRay_0.5.png Shader_GlassG_shRay_0.5.png
Is Diffuse Ray Shader_GlassB_diRay_0.5.png Shader_GlassG_diRay_0.5.png
Is Glass Ray Shader_GlassB_glRay_0.5.png Shader_GlassG_glRay_0.5.png
Is Singular Ray Shader_GlassB_siRay_0.5.png Shader_GlassG_siRay_0.5.png
Is Reflection Ray Shader_GlassB_reRay_0.5.png Shader_GlassG_reRay_0.5.png
Is Transmission Ray Shader_GlassB_trRay_0.5.png Shader_GlassG_trRay_0.5.png

Roughness 1.0 Beckmann GGX
通常の World Shader_GlassB_nomal1.png Shader_GlassG_nomal1.png
Is Camera Ray Shader_GlassB_caRay_1.png Shader_GlassG_caRay_1.png
Is Shadow Ray Shader_GlassB_shRay_1.png Shader_GlassG_shRay_1.png
Is Diffuse Ray Shader_GlassB_diRay_1.png Shader_GlassG_diRay_1.png
Is Glass Ray Shader_GlassB_glRay_1.png Shader_GlassG_glRay_1.png
Is Singular Ray Shader_GlassB_siRay_1.png Shader_GlassG_siRay_1.png
Is Reflection Ray Shader_GlassB_reRay_1.png Shader_GlassG_reRay_1.png
Is Transmission Ray Shader_GlassB_trRay_1.png Shader_GlassG_trRay_1.png

Roughness での比較

以下は、各 Distribution で Roughness の変化がどのように影響するかを比べるように並べてあります。
Beckmann Roughness 0.0 Roughness 0.5 Roughness 1.0
通常の World Shader_GlassB_nomal.png Shader_GlassB_nomal0.5.png Shader_GlassB_nomal1.png
Is Camera Ray Shader_GlassB_caRay.png Shader_GlassB_caRay_0.5.png Shader_GlassB_caRay_1.png
Is Shadow Ray Shader_GlassB_shRay.png Shader_GlassB_shRay_0.5.png Shader_GlassB_shRay_1.png
Is Diffuse Ray Shader_GlassB_diRay.png Shader_GlassB_diRay_0.5.png Shader_GlassB_diRay_1.png
Is Glass Ray Shader_GlassB_glRay.png Shader_GlassB_glRay_0.5.png Shader_GlassB_glRay_1.png
Is Singular Ray Shader_GlassB_siRay.png Shader_GlassB_siRay_0.5.png Shader_GlassB_siRay_1.png
Is Reflection Ray Shader_GlassB_reRay.png Shader_GlassB_reRay_0.5.png Shader_GlassB_reRay_1.png
Is Transmission Ray Shader_GlassB_trRay.png Shader_GlassB_trRay_0.5.png Shader_GlassB_trRay_1.png

GGX Roughness 0.0 Roughness 0.5 Roughness 1.0
通常の World Shader_GlassG_nomal.png Shader_GlassG_nomal0.5.png Shader_GlassG_nomal1.png
Is Camera Ray Shader_GlassG_caRay.png Shader_GlassG_caRay_0.5.png Shader_GlassG_caRay_1.png
Is Shadow Ray Shader_GlassG_shRay.png Shader_GlassG_shRay_0.5.png Shader_GlassG_shRay_1.png
Is Diffuse Ray Shader_GlassG_diRay.png Shader_GlassG_diRay_0.5.png Shader_GlassG_diRay_1.png
Is Glass Ray Shader_GlassG_glRay.png Shader_GlassG_glRay_0.5.png Shader_GlassG_glRay_1.png
Is Singular Ray Shader_GlassG_siRay.png Shader_GlassG_siRay_0.5.png Shader_GlassG_siRay_1.png
Is Reflection Ray Shader_GlassG_reRay.png Shader_GlassG_reRay_0.5.png Shader_GlassG_reRay_1.png
Is Transmission Ray Shader_GlassG_trRay.png Shader_GlassG_trRay_0.5.png Shader_GlassG_trRay_1.png

Sharp Roughness 0.0
通常の World Shader_GlassS_nomal.png
Is Camera Ray Shader_GlassS_caRay.png
Is Shadow Ray Shader_GlassS_shRay.png
Is Diffuse Ray Shader_GlassS_diRay.png
Is Glass Ray Shader_GlassS_glRay.png
Is Singular Ray Shader_GlassS_siRay.png
Is Reflection Ray Shader_GlassS_reRay.png
Is Transmission Ray Shader_GlassS_trRay.png

Translucent BSDF

  Hex:F7F7F7
通常の World Shader_Translucent_nomal.png
Is Camera Ray Shader_Translucent_caRay.png
Is Shadow Ray Shader_Translucent_shRay.png
Is Diffuse Ray Shader_Translucent_diRay.png
Is Glossy Ray Shader_Translucent_glRay.png
Is Singular Ray Shader_Translucent_siRay.png
Is Reflection Ray Shader_Translucent_reRay.png
Is Transmission Ray Shader_Translucent_trRay.png

Transparent BSDF

  Hex:F7F7F7
通常の World Shader_Transparent_nomal.png
Is Camera Ray Shader_Transparent_caRay.png
Is Shadow Ray Shader_Transparent_shRay.png
Is Diffuse Ray Shader_Transparent_diRay.png
Is Glossy Ray Shader_Transparent_glRay.png
Is Singular Ray Shader_Transparent_siRay.png
Is Reflection Ray Shader_Transparent_reRay.png
Is Transmission Ray Shader_Transparent_trRay.png

Velvet BSDF

  Sigma 1.0
通常の World Shader_Velvet_nomal.png
Is Camera Ray Shader_Velvet_caRay.png
Is Shadow Ray Shader_Velvet_shRay.png
Is Diffuse Ray Shader_Velvet_diRay.png
Is Glossy Ray Shader_Velvet_glRay.png
Is Singular Ray Shader_Velvet_siRay.png
Is Reflection Ray Shader_Velvet_reRay.png
Is Transmission Ray Shader_Velvet_trRay.png

  • 最終更新:2012-02-09 14:07:49

このWIKIを編集するにはパスワード入力が必要です

認証パスワード