MetaCore/build_filament/shaders/minified/inline_vignette.fs

13 lines
464 B
GLSL

vec3 vignette(const vec3 color, const highp vec2 uv, const vec4 vignette, const vec4 vignetteColor) {
float midPoint = vignette.x;
float radius = vignette.y;
float aspect = vignette.z;
float feather = vignette.w;
vec2 distance = abs(uv - 0.5) * midPoint;
distance.x *= aspect;
distance = pow(saturate(distance), vec2(radius));
float amount = pow(saturate(1.0 - dot(distance, distance)), feather * 5.0);
return color * mix(vignetteColor.rgb, vec3(1.0), amount);
}