Set Attribute can set attribute values on geometry.

This only works in certain VOP contexts where geometry creation is enabled. In particular, the Geometry VOP DOP, Geometry Wrangle DOP, POP VOP DOP, POP Wrangle DOP, Attrib VOP SOP, Attrib Wrangle SOP, Volume VOP SOP, Volume Wrangle SOP.


All geometry creation is done after all the elements have been processed. Therefore, you cannot read from geometry you just created.


This does not create the attribute. See Add Attribute VOP for that.


The attribute type of groups is integer. This means if the attribute value input is not wired up, its default will be the wrong type and no group will be created. Make sure an integer is wired into it.


If writing to the current element, it is much faster to use the Bind Export VOP.


Geometry Handle

Refers to what geometry to write to. The default of 0 means the currently processed geometry.

Attribute Class

What type of attribute to write to. Detail, primitive, point, and vertex attributes must already exist. Groups will be created if they do not exist. Intrinsics that are read only cannot be written to.

Merge Mode

How to combine the provided value with the previous value of the attribute. If you write to the same attribute from multiple VEX processes, the order will be consistent, but is not defined.


The attribute to write to. This can also be the group name or the intrinsic name.

Point or Primitive

For primitive and point attributes, the point or primitive respectively. For vertex primitives, the primitive that contains the vertex.


The vertex number within the specified primitive.

Attribute Value

The data to write to the attribute. If it does not match the current type of the attribute, the operation will do nothing.

VOP nodes