From 44baea093c0730b66223d897cf161fbf7e4ce5fb Mon Sep 17 00:00:00 2001 From: Lubos Lenco Date: Wed, 21 Jun 2017 19:51:38 +0200 Subject: [PATCH] brdf cleanup --- Assets/brdfraw/brdf_new.png | Bin 0 -> 14847 bytes Assets/brdfraw/brdf_new_g.png | Bin 0 -> 7657 bytes Assets/brdfraw/brdf_new_r.png | Bin 0 -> 23294 bytes Assets/brdfraw/brdf_old.png | Bin 0 -> 14705 bytes Assets/brdfraw/brdf_old_g.png | Bin 0 -> 7914 bytes Assets/brdfraw/brdf_old_r.png | Bin 0 -> 21187 bytes Shaders/std/brdf.glsl | 75 ++++++++++++---------------------- 7 files changed, 27 insertions(+), 48 deletions(-) create mode 100644 Assets/brdfraw/brdf_new.png create mode 100644 Assets/brdfraw/brdf_new_g.png create mode 100644 Assets/brdfraw/brdf_new_r.png create mode 100644 Assets/brdfraw/brdf_old.png create mode 100644 Assets/brdfraw/brdf_old_g.png create mode 100644 Assets/brdfraw/brdf_old_r.png diff --git a/Assets/brdfraw/brdf_new.png b/Assets/brdfraw/brdf_new.png new file mode 100644 index 0000000000000000000000000000000000000000..9bd5dc9ee1e9c8b3679ffb4c3f32b8a2cebc96e6 GIT binary patch literal 14847 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 literal 0 HcmV?d00001 diff --git a/Assets/brdfraw/brdf_new_g.png b/Assets/brdfraw/brdf_new_g.png new file mode 100644 index 0000000000000000000000000000000000000000..fe19d03f0f0ea7b5fe4c0d72301f5574e34ea810 GIT binary patch literal 7657 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 literal 0 HcmV?d00001 diff --git a/Assets/brdfraw/brdf_new_r.png b/Assets/brdfraw/brdf_new_r.png new file mode 100644 index 0000000000000000000000000000000000000000..ab4f952f4368e0bfbb9dd70e12ee8a93d335faf4 GIT binary patch literal 23294 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 F{{Zh8>dycG literal 0 HcmV?d00001 diff --git a/Assets/brdfraw/brdf_old_r.png b/Assets/brdfraw/brdf_old_r.png new file mode 100644 index 0000000000000000000000000000000000000000..e30173e3fed29143d1ca2de327207712a8a9a4b0 GIT binary patch literal 21187 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 literal 0 HcmV?d00001 diff --git a/Shaders/std/brdf.glsl b/Shaders/std/brdf.glsl index 19e29d27..5683c339 100755 --- a/Shaders/std/brdf.glsl +++ b/Shaders/std/brdf.glsl @@ -1,50 +1,5 @@ - -vec2 LightingFuncGGX_FV(const float dotLH, const float roughness) { - float alpha = roughness * roughness; - - // F - float F_a, F_b; - float dotLH5 = pow(1.0 - dotLH, 5.0); - F_a = 1.0; - F_b = dotLH5; - - // V - float vis; - float k = alpha / 2.0; - float k2 = k * k; - float invK2 = 1.0 - k2; - //vis = rcp(dotLH * dotLH * invK2 + k2); - vis = inversesqrt(dotLH * dotLH * invK2 + k2); - - return vec2(F_a * vis, F_b * vis); -} - -float LightingFuncGGX_D(const float dotNH, const float roughness) { - float alpha = roughness * roughness; - float alphaSqr = alpha * alpha; - const float pi = 3.14159; - float denom = dotNH * dotNH * (alphaSqr - 1.0) + 1.0; - - float D = alphaSqr / (pi * denom * denom); - return D; -} - -// John Hable - Optimizing GGX Shaders -// http://www.filmicworlds.com/2014/04/21/optimizing-ggx-shaders-with-dotlh/ -float LightingFuncGGX_OPT3(const float dotNL, const float dotLH, const float dotNH, const float roughness, const float F0) { - // vec3 H = normalize(V + L); - // float dotNL = clamp(dot(N, L), 0.0, 1.0); - // float dotLH = clamp(dot(L, H), 0.0, 1.0); - // float dotNH = clamp(dot(N, H), 0.0, 1.0); - - float D = LightingFuncGGX_D(dotNH, roughness); - vec2 FV_helper = LightingFuncGGX_FV(dotLH, roughness); - float FV = F0 * FV_helper.x + (1.0 - F0) * FV_helper.y; - float specular = dotNL * D * FV; - - return specular; -} - +// http://xlgames-inc.github.io/posts/improvedibl/ +// http://blog.selfshadow.com/publications/s2013-shading-course/ vec3 f_schlick(const vec3 f0, const float vh) { return f0 + (1.0 - f0) * exp2((-5.55473 * vh - 6.98316) * vh); } @@ -62,7 +17,31 @@ float d_ggx(const float nh, const float a) { vec3 specularBRDF(const vec3 f0, const float roughness, const float nl, const float nh, const float nv, const float vh) { float a = roughness * roughness; return d_ggx(nh, a) * clamp(v_smithschlick(nl, nv, a), 0.0, 1.0) * f_schlick(f0, vh) / 4.0; - //return vec3(LightingFuncGGX_OPT3(nl, lh, nh, roughness, f0[0])); +} + +// John Hable - Optimizing GGX Shaders +// http://filmicworlds.com/blog/optimizing-ggx-shaders-with-dotlh/ +vec3 specularBRDFb(const vec3 f0, const float roughness, const float dotNL, const float dotNH, const float dotLH) { + // D + const float pi = 3.1415926535; + float alpha = roughness * roughness; + float alphaSqr = alpha * alpha; + float denom = dotNH * dotNH * (alphaSqr - 1.0) + 1.0; + float D = alphaSqr / (pi * denom * denom); + // F + const float F_a = 1.0; + float F_b = pow(1.0 - dotLH, 5.0); + // V + float vis; + float k = alpha / 2.0; + float k2 = k * k; + float invK2 = 1.0 - k2; + vis = 1.0 / (dotLH * dotLH * invK2 + k2); + vec2 FV_helper = vec2((F_a - F_b) * vis, F_b * vis); + + vec3 FV = f0 * FV_helper.x + FV_helper.y; + vec3 specular = clamp(dotNL, 0.0, 1.0) * D * FV; + return specular / 4.0; // TODO: get rid of / 4.0 } vec3 orenNayarDiffuseBRDF(const vec3 albedo, const float roughness, const float nv, const float nl, const float vh) {