Files
CodenameEngine/assets/shaders/engine/charterGrid.frag
T

35 lines
839 B
GLSL

#pragma header
#define GRID_SIZE 40.0
#define GRID_HEIGHT 4.0
uniform int segments;
vec4 colorA = vec4(0.329, 0.329, 0.329, 1.0);
vec4 colorB = vec4(0.153, 0.153, 0.153, 1.0);
vec4 colorOutline = vec4(0.867, 0.867, 0.867, 1.0);
void main()
{
vec2 pixelSize = (1.0 / openfl_TextureSize) / (GRID_SIZE * float(segments));
vec2 uv = openfl_TextureCoordv.xy;
vec2 pixelUV = vec2(uv.x * GRID_SIZE * float(segments), uv.y * GRID_SIZE * GRID_HEIGHT);
if (uv.x < pixelSize.x || uv.x > 1.0 - pixelSize.x) { //edges
gl_FragColor = colorOutline;
return;
}
vec4 col = colorA;
bool flip = false;
//horizontal
if (mod(pixelUV.x, GRID_SIZE * 2.0) < GRID_SIZE)
flip = !flip;
//vertical
if (mod(pixelUV.y, GRID_SIZE * 2.0) < GRID_SIZE)
flip = !flip;
if (flip)
col = colorB;
gl_FragColor = col * flixel_texture2D(bitmap, uv);
}