export declare const LUMINA_VERTEX_SHADER = "\nvarying vec2 vUv;\nvoid main() {\n vUv = uv;\n gl_Position = vec4(position, 1.0);\n}\n"; export declare const LUMINA_FRAGMENT_SHADER = "\nuniform float u_time;\nuniform vec2 u_resolution;\nuniform float u_wave_scale;\nuniform float u_variation;\nuniform float u_glow;\nuniform float u_vignette;\nvarying vec2 vUv;\nfloat hash(float n) { return fract(sin(n) * 1e4); }\nfloat noise(float x) {\n float i = floor(x);\n float f = fract(x);\n float u = f * f * (3.0 - 2.0 * f);\n return mix(hash(i), hash(i + 1.0), u);\n}\nvoid main() {\n vec2 st = gl_FragCoord.xy / u_resolution.xy;\n float yPos = st.y;\n float wave1 = sin(st.x * 3.0 + u_time * 0.5) * 0.1 * u_wave_scale;\n float wave2 = sin(st.x * 5.0 - u_time * 0.3) * 0.05 * u_wave_scale;\n float combinedWave = wave1 + wave2;\n float intensity = smoothstep(0.4, -0.1, yPos + combinedWave);\n float variation = noise(st.x * 2.0 + u_time * 0.1) * 0.5 + 0.5;\n intensity *= variation * 1.5 * u_variation;\n vec3 color = vec3(0.0, 0.02, 0.0);\n vec3 glowColor1 = vec3(0.05, 0.8, 0.2);\n vec3 glowColor2 = vec3(0.0, 1.0, 0.5);\n vec3 finalGlow = mix(glowColor1, glowColor2, st.x + sin(u_time*0.2)*0.5);\n color += finalGlow * pow(intensity, 1.5) * 1.2 * u_glow;\n float vignette = mix(1.0, smoothstep(1.2, 0.5, length(st - vec2(0.5, 0.0))), u_vignette);\n color *= vignette;\n gl_FragColor = vec4(color, 1.0);\n}\n"; //# sourceMappingURL=emeraldHorizonShaders.d.ts.map