[Bf-blender-cvs] [85e9ddd] viewport_experiments: Fix SSAO artifacts at zero distance by using a small constant bias in length comparison.

Antony Riakiotakis noreply at git.blender.org
Mon Jan 5 14:11:59 CET 2015


Commit: 85e9ddd515c783e0b98cb824e0e381759c1f96da
Author: Antony Riakiotakis
Date:   Mon Jan 5 14:11:37 2015 +0100
Branches: viewport_experiments
https://developer.blender.org/rB85e9ddd515c783e0b98cb824e0e381759c1f96da

Fix SSAO artifacts at zero distance by using a small constant bias in
length comparison.

===================================================================

M	source/blender/gpu/shaders/gpu_shader_fx_ssao_frag.glsl

===================================================================

diff --git a/source/blender/gpu/shaders/gpu_shader_fx_ssao_frag.glsl b/source/blender/gpu/shaders/gpu_shader_fx_ssao_frag.glsl
index c213007..ae1d3af 100644
--- a/source/blender/gpu/shaders/gpu_shader_fx_ssao_frag.glsl
+++ b/source/blender/gpu/shaders/gpu_shader_fx_ssao_frag.glsl
@@ -63,8 +63,8 @@ float calculate_ssao_factor(float depth)
 			float f = dot(dir, normal);
 
 			/* use minor bias here to avoid self shadowing */
-			if (f > 0.05 * len)
-				factor += f / len * 1.0/(1.0 + len * len * ssao_params.z);
+			if (f > 0.05 * len + 0.0001)
+				factor += f * 1.0/(len * (1.0 + len * len * ssao_params.z));
 		}
 	}




More information about the Bf-blender-cvs mailing list