24 lines
739 B
Text
24 lines
739 B
Text
shader_type spatial;
|
|
|
|
uniform vec2 dims;
|
|
uniform vec3 light_color : source_color;
|
|
uniform vec3 dark_color : source_color;
|
|
// uniform float line_width : hint_range(0.0, 0.1, 0.001);
|
|
uniform sampler2D NOISE_PATTERN;
|
|
uniform float noise_strength : hint_range(0, 1.0, 0.01);
|
|
|
|
vec3 albedo(vec2 pos) {
|
|
vec2 noise_pos = pos*vec2(textureSize(NOISE_PATTERN,1))/dims;
|
|
vec3 noise = noise_strength*(texture(NOISE_PATTERN, noise_pos).rgb - vec3(0.5));
|
|
|
|
if (round(mod(pos.x/2.0+noise.r, 1.0)) == round(mod(pos.y/2.0+noise.g, 1.0))) {
|
|
return dark_color;
|
|
} else {
|
|
return light_color;
|
|
}
|
|
}
|
|
|
|
void fragment() {
|
|
vec2 p = UV*dims;
|
|
ALBEDO = (albedo(p-vec2(0.01, 0.0))+albedo(p+vec2(0.01,0.0))+albedo(p-vec2(0.0, 0.01))+albedo(p+vec2(0.0,0.01)))/4.0;
|
|
} |