Skip to content

Instantly share code, notes, and snippets.

@demicuz
Created January 21, 2018 20:55
Show Gist options
  • Save demicuz/533e004dd1658203608cc9bba984f0bc to your computer and use it in GitHub Desktop.
Save demicuz/533e004dd1658203608cc9bba984f0bc to your computer and use it in GitHub Desktop.
VEDA issue
/*
{
server: 3000
}
*/
precision mediump float;
uniform float time;
uniform vec2 resolution;
uniform vec2 mouse;
vec2 m;
vec2 pos1 = vec2(.5, .5);
vec2 pos2 = vec2(.0);
vec2 pos3 = vec2(.1, 1.);
vec2 speed1 = vec2(.2, .34);
vec2 speed2 = vec2(-.2, .1);
vec2 speed3 = vec2(.1, .4);
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa {
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// }
// mirrors to -1..1
vec2 mirror(vec2 pos)
{
vec2 mul = (abs(pos) - 1.) / 2.;
vec2 reversed = step(1., mod(mul, 2.)); // 1.0 if reversed
vec2 r = fract(mul); // from 0 to 1
r = r * 2. - 1.;
r -= r * reversed * 2.;
return r;
}
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// {
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// }
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// {
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// }
void main()
{
m = mouse;
vec2 uv = gl_FragCoord.xy / resolution - vec2(.5);
uv.x *= resolution.x / resolution.y;
uv *= 2.;
vec3 color = vec3(.0);
pos1 += speed1 * time;
pos2 += speed2 * time;
pos3 += speed3 * time;
float l = length(pos1 - uv);
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
vec2 r1 = mirror(pos1);
vec2 r2 = mirror(pos2);
vec2 r3 = mirror(pos3);
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
color.r = fract(length(r1 - uv)*3.);
color.g = fract(length(r2 - uv)*3.);
color.b = fract(length(r3 - uv)*3.);
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
//
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
// aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
color *= step(abs(uv.x), 1.);
gl_FragColor = vec4(color, 1.0);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment