Diffstat (limited to 'effects/glitch.tres')
| -rw-r--r-- | effects/glitch.tres | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/effects/glitch.tres b/effects/glitch.tres new file mode 100644 index 0000000..0062913 --- /dev/null +++ b/effects/glitch.tres @@ -0,0 +1,14 @@ +[gd_resource type="Shader" format=2] + +[resource] +code = "shader_type canvas_item; + +uniform bool apply = false; +uniform float offset = 1.; + +void fragment(){ + vec4 green_channel = texture(SCREEN_TEXTURE, SCREEN_UV); + vec4 red_channel = texture(SCREEN_TEXTURE, vec2(SCREEN_UV.x + (offset * SCREEN_PIXEL_SIZE.x), SCREEN_UV.y)); + vec4 blue_channel = texture(SCREEN_TEXTURE, vec2(SCREEN_UV.x - (offset * SCREEN_PIXEL_SIZE.x), SCREEN_UV.y)); + COLOR = vec4(red_channel.r, green_channel.g, blue_channel.b, 1.); +}" |