Just Chromatic Aberration

This is a little shader to create a chromatic aberration without any other effect, you can control de X and Y displacement of  each color (RGB) individually.

Shader code
// chromatic aberration

shader_type canvas_item;

uniform vec2 r_displacement = vec2(3.0, 0.0);
uniform vec2 g_displacement = vec2(0.0, 0.0);
uniform vec2 b_displacement = vec2(-3.0, 0.0);

void fragment()
	float r = texture(SCREEN_TEXTURE, SCREEN_UV + vec2(SCREEN_PIXEL_SIZE*r_displacement), 0.0).r;
	float g = texture(SCREEN_TEXTURE, SCREEN_UV + vec2(SCREEN_PIXEL_SIZE*g_displacement), 0.0).g;
	float b = texture(SCREEN_TEXTURE, SCREEN_UV + vec2(SCREEN_PIXEL_SIZE*b_displacement), 0.0).b;
	COLOR = vec4(r, g, b, 1.0);
2d, 80, 90, chromatic aberration, color abberration, tv
The shader code and all code snippets in this post are under CC0 license and can be used freely without the author's permission. Images and videos, and assets depicted in those, do not fall under this license. For more info, see our License terms.

Related shaders

Double Vision w/ chromatic aberration

Chromatic Aberration Vignette

Chromatic Abberation (With Offset)

Notify of

Inline Feedbacks
View all comments