Advertisement
Guest User

Untitled

a guest
Jul 1st, 2016
56
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. uniform sampler2D u_tex;
  2. uniform float u_time;
  3.  
  4. varying vec2 v_uv;
  5.  
  6. float rand(vec2 co){
  7.     return fract(sin(dot(co.xy ,vec2(12.9898,78.233))) * 43758.5453);
  8. }
  9.  
  10. void main() {",
  11.     float r = 0.0, g = 0.0, b = 0.0;
  12.    vec2 uv = v_uv;
  13.    float position = 0.5 + sin(u_time) * 0.2;
  14.  
  15.    float n = 0.0;
  16.    vec2 offset = vec2(0.0);
  17.  
  18.    float dy = (0.5 - abs(uv.y - position)) * 2.0;
  19.    offset.x = 0.2 * dy * dy * dy * sin(uv.y * 10.0 + u_time/3.0);
  20.    uv += offset;
  21.    n = dy * rand(u_time * uv * 6400.0);
  22.    if (n > 0.9) n = 1.0;
  23.    else n = 0.0;
  24.  
  25.    vec3 c = texture2D(u_tex, uv).rgb;
  26.  
  27.    r = texture2D(u_tex, uv - offset/10.0).r;
  28.    g = c.g;
  29.    b = texture2D(u_tex, uv + offset/10.0).b;
  30.  
  31.    gl_FragColor = vec4(r, g, b, 1.0) + vec4(n, n, n, 1.0);
  32. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement