     vec2 sampleUV = (sampleProjection.xy / sampleProjection.w) * 0.5 + 0.5;
     float sampleDepth = (viewMatrix * texture(positionMap, sampleUV)).z;
 
-    float rangeCheck = smoothstep(0.0, 1.0, sampleRadius / abs(viewPosition.z - sampleDepth));
-    occlusion += sampleDepth >= samplePoint.z + sampleBias ? 1.0 * rangeCheck : 0.0;
+    occlusion += sampleDepth >= samplePoint.z + sampleBias ? 1.0 : 0.0;
   }
-
-  occlusion = 1.0 - (occlusion / sampleSize);
 }


uniform vec2 noiseScale;

uniform int sampleSize;
uniform float sampleRadius;
uniform float sampleBias;
uniform vec3 samplePoints[64];


  occlusion = 0;

  for(int i = 0; i < nrOfSamples; i++)
  {
    vec3 samplePoint = TBN * samplePoints[i];
    samplePoint = viewPosition + samplePoint * sampleRadius;
