#define ITERATIONS 22 #define SPEED 5.5 #define DISPLACEMENT 0.15 #define TIGHTNESS 15.0 #define YOFFSET 0.1 #define YSCALE 0.25 #define FLAMETONE vec3(50.0, 5.0, 1.0) float noise( in vec3 x ) // iq noise function { vec3 p = floor(x); vec3 f = fract(x); f = f*f*(3.0-2.0*f); vec2 uv = (p.xy+vec2(37.0,17.0)*p.z) + f.xy; vec2 rg = textureLod( iChannel0, (uv+ 0.5)/256.0, 0.0 ).yx; return mix( rg.x, rg.y, f.z ) * 2.0 - 1.0; } void main() { vec2 uv = fragCoord.xy / iResolution.xy; float nx = 0.9; float ny = 0.8; for (int i=1; i