Joey Eamigh 9989fab018
addons?
2025-10-10 14:07:23 -04:00

21 lines
566 B
Plaintext

shader_type canvas_item;
uniform vec2 origin;
uniform vec4 tint = vec4(0.0);
uniform vec2 tile_size = vec2(16.0);
uniform float lock_to_global = 1.0;
varying vec2 world_vertex;
void vertex() {
world_vertex = (MODEL_MATRIX * vec4(VERTEX, 0.0, 1.0)).xy - origin;
world_vertex = mix(VERTEX, world_vertex, lock_to_global);
}
void fragment() {
vec2 coor = mod(world_vertex, tile_size * 2.0);
vec2 checker = step(coor, tile_size);
COLOR.rgb = mix(vec3(mix(1.0 - checker.x, checker.x, checker.y)) * 0.2 + 0.5, tint.rgb, tint.a);
COLOR.a = max(COLOR.a, tint.a);
}