I would suggest using a ColorRect node or a TextureRect node, set the layout to full rect
, and then write a CanvasItem shader on top of that. You will want to use SCREEN_TEXTURE
and SCREEN_UV
instead of TEXTURE
and UV
though.
A super simple shader that makes the screen always have a red tint:
shader_type canvas_item
void fragment() {
vec3 screen_pixel = texture(SCREEN_TEXTURE, SCREEN_UV).rgb
screen_pixel.r = 1
COLOR = screen_pixel
}