Join objects of different UV names with Geometry Nodes

I’m trying to join objects into single mesh with Geometry nodes, but it breaks UV because Blender they mismatch UV names.

Doing that in python (renaming UVs so they match and then join them) is trivial, but i would like to just dont have to do this every time and it wont work with import node.

But i don’t know how to force Blender to just hand me first UV, or rename first UV channel in each instance, because Get Attribute Names and Lists seems to not wanting to work with For Each Element node or in other combinations.
Should this work, but its bugged, or am i missing something, or its is still not yet possible?

You are dealing with an instance, “unpack” it with Realize Instances to access the UV names.


Note the Separate Children option is selected to ensure that the For Each Element operates on each child instance in the collection and not on the whole collection as a single instance (which is the default behaviour).

Good luck.

Thanks! Thats the crucial part that i missed.

For future proofing. Is there a way that can change unseparated children to separated children without collection info node?

Untick “Realize All” and set depth to 1.

You can use recursive closures to do arbitrary collection depths.


The group has the previous answer without the realize instances node (basically your initial attempt)

Good luck.