From df4ba3a11ac50299c6f7d1d0d8e2baed021430e0 Mon Sep 17 00:00:00 2001 From: Haze Weathers Date: Fri, 2 Jun 2023 18:03:22 -0400 Subject: [PATCH] advanced ska --- shaders/ska_plane.gdshader | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/shaders/ska_plane.gdshader b/shaders/ska_plane.gdshader index 03d89c7..668e1f2 100644 --- a/shaders/ska_plane.gdshader +++ b/shaders/ska_plane.gdshader @@ -4,8 +4,9 @@ render_mode skip_vertex_transform; uniform vec4 color_1 : hint_color = vec4(1.0, 1.0, 1.0, 1.0); uniform vec4 color_2 : hint_color = vec4(0.0, 0.0, 0.0, 1.0); uniform vec2 checker_size = vec2(8.0, 8.0); -uniform vec2 cycle_speed = vec2(0.0, 0.0); uniform vec2 pan_speed = vec2(0.0, 0.0); +uniform vec2 cycle_speed = vec2(0.0, 0.0); +uniform vec2 cycle_alternation = vec2(0.0, 0.0); uniform mat2 uv_transform = mat2(1.0); float checker(vec2 uv) { @@ -20,6 +21,11 @@ void vertex() { } void fragment() { - vec2 uv = uv_transform * (UV - pan_speed * TIME) - cycle_speed * TIME; + vec2 uv = uv_transform * (UV - pan_speed * TIME); + vec2 alternation = mix(vec2(1.0), vec2( + (checker(vec2(uv.y, 0.0)) - 0.5) * 2.0, + (checker(vec2(0.0, uv.x)) - 0.5) * 2.0 + ), cycle_alternation); + uv = uv - cycle_speed * alternation * TIME; COLOR = mix(color_1, color_2, checker(uv)); } \ No newline at end of file