Abstract: An approach is described for modifying subobjects of geometry objects based on per-subobject objects. A per-subobject object is associated with a sequence of components, such as a modifier stack, that are used to modify a geometry object. The per-subobject object may take one or more actions with respect to subobjects of the mesh object, such as applying data to specified faces. After a subsequent modification of the geometry object, the per-subobject object reapplies data to the faces that result from the modification. For example, the per-subobject object may specify the data to apply to faces that result from splitting faces during the modification or to faces that result from merging faces during the modification. The data for the faces may be accessed using a data channel that is associated with the per-subobject object.