Car Wash, Paint Walls, in realtime

I have two textures that I am trying to blend from one to another for various various objects and walls etc. I have the regular texture map and the dirty texture map. I want to blend from the dirty texture map to the regular texture maps.
Methods I have researched so far…

-decals-
I don’t think this would work because I would need a million decals to make an object sufficiently dirty and this would be computationally heavy.

-vertex paint-
From what I can tell this can’t be done at runtime can it?

-runtime virtual textures-
This method seems limited to simplistic geometric forms or landscapes. or is it?..

Maybe the methods above are sufficient I’m not just familiar with how they can be used. Is there another approach to solving this problem?

Hi TinyTracker1,

There is runtime vertex painting, but from c++, or by using a plugin (there are some on the marketplace).

That would be a preferable option - your meshes will need to have a good number of triangles to support smooth painting, but that’s no biggie…

I can’t commit to using plugins because of potential performance issues.

Runtime virtual texture and use that texture as mask, You must make sure that all the objects you want to paint are in the same UV

Okay I have something that works now. The problem now is when I have to cross the UV seams of an object, it leaves a hard edge during the raycast until it cross over the edge.
Is there a way to reference surface materials and render targets from pixel data? What is a smart way to deal with UV seams?

I am wondering of the downsides of having multiple traces when crossing UV seams do I have to be concerned about how computationally heavy this could get?

maybe u can try do a box projection of your car in a new UV?

Yeah that isn’t going to help. I’m not going to create a bunch of UV projections for this.