Mindustry/core/assets/shaders/menu.fragment

33 lines
813 B
Plaintext

#ifdef GL_ES
precision highp float;
precision highp int;
#endif
uniform sampler2D u_texture;
uniform vec2 u_resolution;
uniform float u_time;
uniform vec2 u_uv;
uniform vec2 u_uv2;
uniform float u_scl;
varying vec4 v_color;
varying vec2 v_texCoord;
void main() {
vec2 coords = ((v_texCoord.xy - u_uv) / (u_uv2 - u_uv) - vec2(0.5, 0.5)) * u_resolution/u_scl;
float roundx = 8.0;
float roundy = roundx;
float roundm = 0.2;
coords.x = float(int(coords.x / roundx)) * roundx;
coords.y = float(int(coords.y / roundy)) * roundy;
float d = abs(coords.x) - abs(coords.y);
float m = abs(sin(-u_time/50.0 + d/120.0));
m = float(int(m / roundm)) * roundm + roundm;
gl_FragColor.rgb = mix(v_color.rgb, vec3(0.0), m);
gl_FragColor.a = mod(abs(coords.x) + abs(coords.y), 110.0) < 35.0 ? 1.0 : 0.0;
}