diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2021-10-24 20:06:11 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2021-11-05 18:55:06 +0300 |
commit | b8ab3f2f521371bd329acbbe193da7d91266605e (patch) | |
tree | 570369b2a49fc148bc74b9bcd5b9de9db23738c9 /source/blender | |
parent | 92a92fc60f3726ef30c620a8da4840c01118c1e6 (diff) |
EEVEE: Principled BSDF: Fix refraction roughness when GGX single-scatter
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/gpu/shaders/material/gpu_shader_material_principled.glsl | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/source/blender/gpu/shaders/material/gpu_shader_material_principled.glsl b/source/blender/gpu/shaders/material/gpu_shader_material_principled.glsl index 00ac82cc363..355046e1dba 100644 --- a/source/blender/gpu/shaders/material/gpu_shader_material_principled.glsl +++ b/source/blender/gpu/shaders/material/gpu_shader_material_principled.glsl @@ -182,7 +182,8 @@ void node_bsdf_principled_eval(vec4 base_color, g_refraction_data.color = base_color.rgb * (btdf * glass_transmission_weight); g_refraction_data.N = N; - g_refraction_data.roughness = do_multiscatter != 0.0 ? roughness : transmission_roughness; + g_refraction_data.roughness = do_multiscatter != 0.0 ? roughness : + max(roughness, transmission_roughness); g_refraction_data.ior = ior; } } |