     // front to back accumulation
     // float mask = float(texture(PageMask, samplePos).r) / USE_PAGE_MARKER;
     vec4 sampleValue  = textureLod(SceneOpacityVoxel, samplePos, sampleLOD);
+    sampleValue.a *= OcclusionFactor / (0.5 * sampleLOD + 0.001);
     accum += sampleValue * (1.0 - accum.w);
     dist += sampleDiameter;
   }

// 1 : Voxel Ambient Occlusion
uniform int AmbientOcclusionMode;
uniform vec3 CameraPosition;

in vec4 ScreenPos;


  accum += 0.707 * VoxelConeTrace(origin.xyz, normalize(TBN[2] + TBN[1]), 1.0, maxDist);
  accum += 0.707 * VoxelConeTrace(origin.xyz, normalize(TBN[2] - TBN[1]), 1.0, maxDist);

  return saturate(1.0 - accum.a);
}

float AmbientOcclusion(in Surface surface, in sampler3D SceneVoxelRep, in mat4 WorldToVoxelSpace)
