oh interesting that explanation makes a lot of sense! i'm not familiar enough with godot to offer any perfect alternatives, but if i were to approach the problem in an engine i'm familiar with personally i would create a mask for the overlay. you could do this with a texture for more of a unique effect, but if you just need a circle you could use a "distance from point" function to create a gradient and remap it to adjust the softness of the edges. it's probably a bit complicated to explain without me being familiar w godot's shader functions...