I’d like us to agree that attribute names should be unique per geometry.
The goal here is to have a simple but powerful core data model that all geometry processing can use. Allowing duplicate attribute names causes complexity whereever attributes are used. When all names are unique within Blender, we only have to deal with duplicate names when data enters or exits Blender.
There are different possible futures for vertex groups. I’m not sure which one we’ll end up persuing.
- All vertex groups become generic float attributes, potentially with some flag on the attribute.
- A set of vertex groups is packed together into a single attribute that has a unique name across all other attributes on the geometry, but vertex groups in this packed attribute have a separate namespace. In this case, geometry nodes needs special nodes to deal with these packed attributes.
I propose the following next steps:
- Revert this commit so that vertex groups can have the same name as attributes again.
- Show a warning in the vertex groups panel when there are duplicate attribute names, similar to the attributes panel. In all possible futures of vertex groups, that is a good thing because existing vertex groups are already used as generic attributes and thus are already in the same namespace. Even if we persue the packed attributes solution, some, if not all, vertex groups will have to be versioned to become generic attributes for backward compatibility.
- Show a warning when binding an armature to a mesh to avoid duplicate names in practice.
- Add extra import/export settings where necessary to deal with file formats that support duplicate attribute names.