UV Transfer between meshes

Hello all,

I’m trying to work out a ‘pipeline’ for getting content from Blender into a real time renderer. For this the key issue is making a high-res model, baking it, and then mapping it to a lower res model. Now if I create the low res model from the UV mapped high res model, either manually or by using the polygon reduction script it works as the UVs remain the same. Its quite a tedious restriction on content creation however, and makes editing the high-res model latter a lot of work. Additionally taking the UV map from the complex model to the simpler model can result in distortion.

It would be preferable to be able to create the two models arbitrary and to then UV map the simpler model before transferring the UVs onto the high res model and baking. So, the question is, is there a way to do this, either in blender or with a script?

I can certainly imagine how to write such a script, essentially for each vertex in the high res model find the closest point on the low res model and take its UV coordinate. Seams would cause problems with that approach, but you could detect overlapping faces and resolve. A lot of work to implement though, so I’m kinda hoping someone has previously done it, or there is some button in Blender that I am missing.

Thanks in advance for any help.