Splits a mesh into separate meshes for each unique value of a chosen Uniform ( per-face ) primitive variable. The meshes will be created as children of the original mesh, and the original mesh will be removed.


Container for user-defined plugs. Nodes should never make their own plugs here, so users are free to do as they wish.


The processed output scene.


The on/off state of the node. When it is off, the node outputs the input scene unchanged.


The input scene


The filter used to control which parts of the scene are processed. A Filter node should be connected here.


Legacy plug. Do not use.


The name of the primitive variable to split based on. Must be a Uniform ( per-face ) primitive variable. A separate mesh will be created for each unique value of this primitive variable.


If true, the resulting meshes will be named based on the value of the primitive variable chosen by segment. Requires that the chosen primitive variable be a string.

Otherwise, the resulting meshes will just be named based on an integer index.


Create tightly fitted bounding boxes that exactly fit each split child mesh. This requires visiting the vertices of the input mesh, so is more expensive. If false, the bounding box of the original mesh is used for all new meshes

  • this is technically correct, since they are all contained within this bounding box, but isn’t as informative.