From 926d6cbd46e055a6f1f7e42b644ac6a70f40bd7f Mon Sep 17 00:00:00 2001 From: Alexander Rose <alexander.rose@weirdbyte.de> Date: Sat, 25 Feb 2023 13:35:45 -0800 Subject: [PATCH] reduce over-blurring occlusion at larger view distances --- CHANGELOG.md | 1 + src/mol-gl/shader/ssao-blur.frag.ts | 2 ++ 2 files changed, 3 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6326f8a9c..949d70536 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ Note that since we don't clearly distinguish between a public and private interf - Add occlusion color parameter - Fix issue with outlines and orthographic camera +- Reduce over-blurring occlusion at larger view distances ## [v3.31.4] - 2023-02-24 diff --git a/src/mol-gl/shader/ssao-blur.frag.ts b/src/mol-gl/shader/ssao-blur.frag.ts index 114294767..eb18948f3 100644 --- a/src/mol-gl/shader/ssao-blur.frag.ts +++ b/src/mol-gl/shader/ssao-blur.frag.ts @@ -74,6 +74,8 @@ void main(void) { float kernelSum = 0.0; // only if kernelSize is odd for (int i = -dOcclusionKernelSize / 2; i <= dOcclusionKernelSize / 2; i++) { + if (abs(i) > 1 && abs(float(i)) * pixelSize > 0.5) continue; + vec2 sampleCoords = coords + float(i) * offset; if (outsideBounds(sampleCoords)) { continue; -- GitLab