15 lines
566 B
Text
15 lines
566 B
Text
shader_type canvas_item;
|
|
|
|
uniform vec4 flash_color : source_color = vec4(1.0, 0.0, 0.0, 1.0);
|
|
uniform float intensity : hint_range(0.0, 1.0) = 0.0;
|
|
uniform float edge_power : hint_range(0.1, 4.0) = 2.5;
|
|
uniform float inner_ratio : hint_range(0.0, 1.0) = 0.75;
|
|
uniform float feather : hint_range(0.01, 1.0) = 0.4;
|
|
|
|
void fragment() {
|
|
vec2 uv = UV * 2.0 - 1.0;
|
|
float dist = length(uv);
|
|
float a = smoothstep(inner_ratio, inner_ratio + feather, dist);
|
|
a = pow(a, edge_power);
|
|
COLOR = vec4(flash_color.rgb, a * flash_color.a * intensity);
|
|
}
|