From fc76ed99491645526bbded66130e8bc4b98c79cd Mon Sep 17 00:00:00 2001 From: flashk Date: Fri, 8 Nov 2019 11:23:50 -0800 Subject: [PATCH] clampNoV function ignores argument The "clampNoV" shader function is ignoring the passed dot product argument and recomputing the dot product itself. This will result in the wrong NoV value being used for clear coat IBL computations. --- shaders/src/common_material.fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/shaders/src/common_material.fs b/shaders/src/common_material.fs index 7aebaed63d..8356f0b188 100644 --- a/shaders/src/common_material.fs +++ b/shaders/src/common_material.fs @@ -11,7 +11,7 @@ float clampNoV(float NoV) { // Neubelt and Pettineo 2013, "Crafting a Next-gen Material Pipeline for The Order: 1886" - return max(dot(shading_normal, shading_view), MIN_N_DOT_V); + return max(NoV, MIN_N_DOT_V); } vec3 computeDiffuseColor(const vec4 baseColor, float metallic) {