mirror of
https://github.com/Orama-Interactive/Pixelorama.git
synced 2025-02-22 13:33:13 +00:00
Not sure if that single if statement counts as branching code, but it's generally a good idea to avoid if statements in shader code, so I used step instead.
9 lines
267 B
GLSL
9 lines
267 B
GLSL
shader_type canvas_item;
|
|
|
|
|
|
void fragment() {
|
|
vec3 inverted = vec3(1.0) - COLOR.rgb;
|
|
vec3 screen_color = textureLod(SCREEN_TEXTURE, SCREEN_UV, 0.0).rgb;
|
|
float avg = (screen_color.r + screen_color.g + screen_color.b) / 3.0;
|
|
COLOR.rgb = inverted * step(avg, 0.5);
|
|
}
|