1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
  | 
/*
    Hurry Curry! - a game about cooking
    Copyright (C) 2025 Hurry Curry! Contributors
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU Affero General Public License as published by
    the Free Software Foundation, version 3 of the License only.
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU Affero General Public License for more details.
    You should have received a copy of the GNU Affero General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.
*/
shader_type spatial;
uniform float eps = .01;
uniform vec3 color_a : source_color;
uniform vec3 color_b : source_color;
void fragment() {
    vec2 uv = UV;
    uv = mod(uv, 1.);
    uv.x = smoothstep(0.5 - eps, 0.5 + eps, uv.x) * smoothstep(1. + eps, 1. - eps, uv.x)
        + smoothstep(0. + eps, 0. - eps, uv.x);
    uv.y = smoothstep(0.5 - eps, 0.5 + eps, uv.y) * smoothstep(1. + eps, 1. - eps, uv.y)
        + smoothstep(0. + eps, 0. - eps, uv.y);
    uv = uv * 2. - 1.;
    ALBEDO = mix(color_a, color_b, clamp(uv.x * uv.y, 0., 1.));
}
 
  |