extern Image scene;
extern Image light;

extern vec3 ambient;

vec4 effect(vec4 vcolor, Image unused, vec2 uv, vec2 px)
{
    vec4 s = Texel(scene, uv);
    vec3 l = Texel(light, uv).rgb;

    l = clamp(l, 0.0, 1.0);
    vec3 a = clamp(ambient, 0.0, 1.0);

    // Канальный множитель: от ambient до 1 в зависимости от света
    vec3 m = a + (vec3(1.0) - a) * l;

    vec3 rgb = s.rgb * m;

    return vec4(rgb, s.a);
}
