This is a dead thread but i was able to get something going for our game that does effectively this.
^^ example
So my setup is as follows
I use a paint can to hit a uv to determine where a sphere mask should start in 3d
I then render that same sphere mesh on an flattened version of the mesh so it flattens the sphere mask correctly into 2d
Then use a scene capture to take a picture of the flattened mesh as a white mask for my painting operations.
Here is the material function i plug into world position offset to get the flattened effect (for some reason uepastebin didnt like it but heres a picture)
If anyone can figure out how to do this without the scene capture step would be a true hero.