molstar
Version:
A comprehensive macromolecular library.
2 lines (1 loc) • 862 B
TypeScript
export declare const blur_frag = "\nprecision highp float;\nprecision highp int;\nprecision highp sampler2D;\n\nuniform sampler2D tInput;\nuniform vec2 uTexSizeInv;\n\nuniform vec2 uDirection;\nuniform float uGaussianCoefficients[dKernelRadius];\n\nvoid main(void) {\n vec2 coords = gl_FragCoord.xy * uTexSizeInv;\n float weightSum = uGaussianCoefficients[0];\n vec4 diffuseSum = texture2D(tInput, coords) * weightSum;\n\n for(int i = 1; i < dKernelRadius; ++i) {\n float x = float(i);\n float w = uGaussianCoefficients[i];\n vec2 offset = uDirection * uTexSizeInv * x;\n vec4 sample1 = texture2D(tInput, coords + offset);\n vec4 sample2 = texture2D(tInput, coords - offset);\n diffuseSum += (sample1 + sample2) * w;\n weightSum += 2.0 * w;\n }\n\n gl_FragColor = diffuseSum / weightSum;\n}\n";