From 3d29979edfb66b5ebfc7073d01264d8a475c448e Mon Sep 17 00:00:00 2001 From: Weizhen Huang Date: Wed, 9 Oct 2024 12:48:03 +0200 Subject: [PATCH] EEVEE: improve GGX NDF precision at small roughness See !125919 --- .../engines/eevee_next/shaders/eevee_bxdf_microfacet_lib.glsl | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/source/blender/draw/engines/eevee_next/shaders/eevee_bxdf_microfacet_lib.glsl b/source/blender/draw/engines/eevee_next/shaders/eevee_bxdf_microfacet_lib.glsl index ac64815bb3f..44d17855304 100644 --- a/source/blender/draw/engines/eevee_next/shaders/eevee_bxdf_microfacet_lib.glsl +++ b/source/blender/draw/engines/eevee_next/shaders/eevee_bxdf_microfacet_lib.glsl @@ -16,7 +16,8 @@ float bxdf_ggx_D(float NH, float a2) { - return a2 / (M_PI * square((a2 - 1.0) * square(NH) + 1.0)); + float NH2 = square(NH); + return a2 / (M_PI * square((1.0 - NH2) + a2 * NH2)); } float bxdf_ggx_smith_G1(float NX, float a2)