Hello ! I’d like to apply a texture on an arbitrary 4 vertices mesh to get this kind of result:

instead of:

I found some interesting posts on the forum providing a Shader that seems to work well with trapezoids but not that good with other arbitrary quadrilaterals. ( Right there → https://forum.unity3d.com/threads/correcting-affine-texture-mapping-for-trapezoids.151283/ )
Here are the results using this shader script.
I’m not sure if it’s actually possible to edit the code to reduce this distortion.
I also found this article talking about an openGL solution but not being familiar with these concepts nor with Shader programming, I have no clue how to connect the dots.
I would appreciate any thoughts, recommendations on a way to do this (preferably using shaders or gpu calculation, to be as time-efficiently as possible).
Thanks a lot !