export declare const sampleBlueNoise = "\nconst float g = 1.6180339887498948482;\nconst float a1 = 1.0 / g;\n\n// reference: https://extremelearning.com.au/unreasonable-effectiveness-of-quasirandom-sequences/\nfloat r1(float n) {\n // 7th harmonious number\n return fract(1.1127756842787055 + a1 * n);\n}\n\nconst vec4 hn = vec4(0.618033988749895, 0.3247179572447458, 0.2207440846057596, 0.1673039782614187);\n\nvec4 sampleBlueNoise(sampler2D texture, int seed, vec2 repeat, vec2 texSize) {\n vec2 size = vUv * texSize;\n vec2 blueNoiseSize = texSize / repeat;\n float blueNoiseIndex = floor(floor(size.y / blueNoiseSize.y) * repeat.x) + floor(size.x / blueNoiseSize.x);\n\n // get the offset of this pixel's blue noise tile\n // int blueNoiseTileOffset = int(r1(blueNoiseIndex + 1.0) * 65536.);\n\n vec2 blueNoiseUv = vUv * repeat;\n\n // fetch blue noise for this pixel\n vec4 blueNoise = textureLod(texture, blueNoiseUv, 0.);\n\n // animate blue noise\n if (seed != 0) {\n blueNoise = fract(blueNoise + hn * float(seed));\n\n blueNoise.r = (blueNoise.r > 0.5 ? 1.0 - blueNoise.r : blueNoise.r) * 2.0;\n blueNoise.g = (blueNoise.g > 0.5 ? 1.0 - blueNoise.g : blueNoise.g) * 2.0;\n blueNoise.b = (blueNoise.b > 0.5 ? 1.0 - blueNoise.b : blueNoise.b) * 2.0;\n blueNoise.a = (blueNoise.a > 0.5 ? 1.0 - blueNoise.a : blueNoise.a) * 2.0;\n }\n\n return blueNoise;\n}\n"; //# sourceMappingURL=sampleBlueNoise.d.ts.map