When assigning instance attributes in Maya, they can be named like Primvars, where controls are found on the shape node. Or as attributes found on the transform node and variable per instance.

 

Example commands:

rfm2.ui.user_attrs.user_attrs_add(data_attr, nodelist, pdict) -> add to one or more nodes

rfm2.ui.user_attrs.user_attrs_del(data_attr, nodelist, attrlist) -> delete from one or more nodes

rfm2.ui.user_attrs.user_attrs(node) -> list all user attributes

 

 

Added notes:

Emit Color Sets - Emits color sets assigned to objects, this is especially useful when rendering MASH objects with procedural coloring.

Prevent Polygon Cracking - Typically it's expected that you displace subdivision surfaces. However, should you need to displace a polygonal surface with "hard" normals, this option will attempt to prevent the object from coming apart once it's displaced.

Emit Face IDs - This is allows surfaces to make use of Ptex texturing.

Reference Object _WPref and the place3d with the reference object should be parented below the object that you are animating. _WPref is necessary for instances to have the texture stick in the same way. However, during IPR if you move/translate your object and it does not deform, it is not re-evaluated and the _WPref is not updated if only the transform has changed. You will only see the correct values if you restart the render or trigger an update on the mesh somehow (for instance, tweaking the displacement bound).