From aaf1650b099393c4cdcf44faf8e3a699e021f817 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Sat, 13 Feb 2021 18:54:54 +0100 Subject: EEVEE: Change cubemap roughness fit This changes the roughness mapping to better utilize the mip chain resolution. This improves glossy reflections with small roughness. Lightcache version bumped because old data does not have the same roughness mapping and cannot be used. --- source/blender/draw/engines/eevee/eevee_lightprobes.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'source/blender/draw/engines/eevee/eevee_lightprobes.c') diff --git a/source/blender/draw/engines/eevee/eevee_lightprobes.c b/source/blender/draw/engines/eevee/eevee_lightprobes.c index 395d4dc790d..7688039d0a8 100644 --- a/source/blender/draw/engines/eevee/eevee_lightprobes.c +++ b/source/blender/draw/engines/eevee/eevee_lightprobes.c @@ -1040,8 +1040,10 @@ void EEVEE_lightbake_filter_glossy(EEVEE_ViewLayerData *sldata, pinfo->padding_size *= pinfo->texel_size; pinfo->layer = probe_idx * 6; pinfo->roughness = i / (float)maxlevel; - pinfo->roughness *= pinfo->roughness; /* Disney Roughness */ - pinfo->roughness *= pinfo->roughness; /* Distribute Roughness across lod more evenly. */ + /* Disney Roughness */ + pinfo->roughness = square_f(pinfo->roughness); + /* Distribute Roughness across lod more evenly */ + pinfo->roughness = square_f(square_f(pinfo->roughness)); CLAMP(pinfo->roughness, 1e-8f, 0.99999f); /* Avoid artifacts */ #if 1 /* Variable Sample count and bias (fast) */ -- cgit v1.2.3