How to make an overlay shader which get removed by a colliding raycast (like cleaning)?

:information_source: Attention Topic was automatically imported from the old Question2Answer platform.
:bust_in_silhouette: Asked By ADeer

Hey godot users!
I would call myself inexperienced, but I made a simple mario and a simple zelda style game.
So I am going for 3D now and I was wondering how to make something like a dirt shader (overlay style) and delete (or make invisible) the parts of it where a raycast hit the collision ?
For now I have “collider.queue_free()” when the raycast collides with something in my dirt group, but this get rid of the full object.

So I think I want a shader on a texture, and when the raycast hits I want to get rid of the shader where the raycast colliders (maybe +10pixels), but it should stay on the rest, how do I archive this ?

Thanks in advance,
ADeer :slight_smile: