fragment(`
precision mediump float;
uniform float u_time;
uniform vec2 u_resolution;
uniform vec2 u_mouse;
uniform sampler2D u_texture;
void main() {
vec2 st = gl_FragCoord.xy / u_resolution;
gl_FragColor = texture2D(u_texture, vec2(st.x + pow(1.0 - st.y, 4.) * sin((u_time + 2.) * st.y * 5.), st.y));
}
`, { w: 400, h: 400, play: false, u_texture: 'https://i.imgur.com/I6oaru5.jpg' })