link ShaderToy : https://www.shadertoy.com/view/WddGWN
void mainImage( out vec4 fragColor, in vec2 fragCoord )
{
float x = fragCoord.x;
float y2 = fragCoord.y;
vec2 p = fragCoord.xy / iResolution.yy;
vec2 q = fragCoord.xy / iResolution.yy;
vec2 translate = vec2(cos(iTime),sin(iTime));
vec2 translate2 = vec2(sin(iTime),cos(iTime));
if (sin(iTime)>0.)
p += translate*1.35*fract(sin(iTime)*1.0);
else
p += translate2*1.35*fract(sin(iTime)*1.0);
vec2 pix = fragCoord.xy*p;
vec3 col = texture(iChannel0,floor(pix/17.0)*8.0/iResolution.xy).rgb;
vec3 col2 = texture(iChannel2, floor(pix/8.0)*8.0/iResolution.xy).rgb;
vec3 col3 = texture(iChannel1, floor(pix/8.0)*8.0/iResolution.xy).rgb;
fragColor = vec4(0.1+col3.x+col.x*tan(iTime)+col2.x*1.8,0.3+col3.y+col2.y+col.y*cos(iTime),0.3+col3.z+col.z*sin(iTime)+col2.z,1);
}