I am trying to link two mesh objects, each one has its own UV mapping, both are using the same texture, how can I link the two objects and keep the UV mapping of both objects? It only keeps the one atm. Or is there a way of copying the entire UV map of the one object and paste it when the objects are linked?
You can do this with a very simple python script
# make sure to be in Object mode # make sure to have two objects selected import bpy import bmesh from mathutils import Matrix from contextlib import ExitStack def work(): C = bpy.context if C.mode != 'OBJECT': return if len(C.selected_objects) < 1: print("Must have at least one object selected") return # read into bmesh safely names =  with ExitStack() as stack: bm = bmesh.new() stack.callback(bm.free) for o in C.selected_objects: if o.type != 'MESH': continue m = o.matrix_world bm.transform(m.inverted()) bm.from_mesh(o.data) bm.transform(m) names.append(o.name) # write to actual mesh mesh = bpy.data.meshes.new('Result') object = bpy.data.objects.new('Merge(%s)' % ', '.join(names), mesh) bm.to_mesh(mesh) C.scene.objects.link(object) C.scene.update() work()
I hope this fulfills your needs, I figure you can easily adapt to even more objects but this script should do what you want. Just copy and paste in into the text editor, select your two objects and hit the "Run Script" button.
EDIT: the script can now handle indefinitly many objects.
This isn't possible by definition, as UV maps are object data. By linking object data, you link the UV maps too.
This makes sense, as UVs depend on vertex order.
Instead you could use two UV maps, with different materials for each object.
Transfer UV maps
With one of your objects selected, create a new UV map by clicking the plus button and select it:
Select both objects so that the one with the other UV map is active, and press CtrlL> Transfer UV maps. This will copy the selected UV map from the active object into the selected UV map slot in the selected objects.
Now that you have both UV maps on one object, link the other object to the one with both UV maps (CtrlL> Link object data).
You can either use separate materials linked to the object instead of the object data, or you could use on material which mixes based on the object index.
Set the material link to Object for each object. This will make the specified material be used on that object, regardless of what data is linked.
Create a material with a UV map node to specify which UV map to use, and specify it as the material for one object.
Specify it for the other object and press the little number to make a copy of it:
Change the selected UV map in the UV map node. You should now have linked objects with separate materials, which use separate UV maps: