 
 uniform vec2 noiseScale;
 
-uniform int sampleSize;
+uniform int nrOfSamples;
 uniform float sampleRadius;
 uniform float sampleBias;
 uniform vec3 samplePoints[64];

    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 = 1.0 - (occlusion / sampleSize);
}


  occlusion = 0;

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