Named Attribute Nodes in Blender 3.0

What’s going to happen to attribute unification? Vertex groups, vertex colors, uvmaps, and shapes should all be one generic attribute type. If separate nodes to set and input these things are implemented, imagine how complex it would be? Or are we still going to have to set these with hardcoded names in the modifier interface?

A solution that would be satisfactory for both parties might be possible. It would be share-able, usable in the nodetree, and not string based.

Use get and set nodes. But rather than pointing to an attribute by string, point directly to the data with a new socket type. Only existing attributes can be modified, and built in attributes are greyed out in the list to show you cannot delete them. These would be dynamic and share-able, if the attribute name is changed, the name is changed on the node. If said attribute is missing, the socket turns red until it finds one, just like shader nodes.

But what about primitives, you ask? Primitives can have their own collapsible attribute tab in the node.

Put it all together and:

  • Share-able
  • Doesn’t force you to use modifier
  • Works in nested nodetrees
  • Not hardcoded names, dynamic
  • Flexible, users are not restricted to a workflow
  • Simple and intuitive
2 Likes