Split

Creates explicit parallel branches in the growth graph. Distinct from innate forking, Split allows you to fork the topology into separate, distinct logical paths.

The Split node creates explicit branching in the graph topology.

  • Explicit Branches: Unlike "Forking" (which is an innate property of Grow driven by branch count), Split creates distinct, parallel outputs.
  • Parallel Execution: Each input connected to the Split node becomes a separate child branch spawning from the same point.
  • Control: Allows per-branch delay, depth incrementing, and attribute inheritance.

Concept

Split vs. Fork

  • Forking (in Grow) is probabilistic and data-driven. It's best for scattering many similar branches (like twigs on a branch).
  • Splitting is structural. It's best for defining major architectural changes, like a trunk splitting into two main boughs, or separating the "Main Stem" logic from the "Side Branch" logic.

Depth Tracking Split can increment the split_depth attribute, which is useful for limiting recursion depth or changing logic based on how many times the structure has branched.


Inputs

  • Input 0 — Graph The parent graph.
  • Input 1+ — Child Graphs Each additional input represents a new parallel branch.
  • Output — Graph The combined graph with all branches merged.

Parameters

Global Settings

  • Delay Growth: Enables per-input delay controls.
  • Generate Split Index: Creates a split_index attribute to identify siblings.

Per-Input Settings

  • Delay: How many iterations/steps to wait before this branch starts.
  • Split Vertices: Physically separate the geometry vertices at the split point.
  • Increase Depth: Increments split_depth for this branch.
  • Stamp Parent Attributes: Copies attributes from the parent internode to the child.

Attributes

AttributeMeaning
split_indexInteger ID for the branch (0, 1, 2...).
split_depthHierarchy depth, incremented at splits.

Workflow

  1. Create a main growth path (e.g., a Trunk).
  2. Connect it to Input 0 of a Split node.
  3. Create a secondary growth path (e.g., a heavy Bough).
  4. Connect it to Input 1 of the Split node.
  5. The result is a graph where the Bough spawns from the end of the Trunk.

NodeRelationship
GrowHas innate "Forking" (distinct from Split)
SwitchConditional branching (vs Split's parallel branching)