Graft Branches

The Ultimate Houdini node reference

Visit the Node Bible

To learn more, please log in or sign up for free to explore the Node Bible.
Write your awesome label here.

Graft Branches

Write your awesome label here.
Takes prims/branches from the second input and attaches them onto branches of the scene graph tree in the first input.

Houdini Docs: https://www.sidefx.com/docs/houdini/nodes/lop/graftbranches.html

Unlike referencing in a file with the Reference LOP, this node is more for performing “surgery” on anonymous in-memory layers to build them into a tree you want to write out. It flattens the prims from the other inputs and directly attaches them in-memory to the tree in the first input, rather than creating a composition arc.

This node is very similar to the Graft Stages node, however instead of attaching the entire contents of a stage from another input, it attaches individual primitives (and any descendants).
This node has a multi-parm to allow you to graft multiple primitives from the second input onto the “main” scene graph tree in the first input.

This can be very useful to grab objects from an imported stage, or changes from an edited stage, and put them in different locations in the current stage.
Drag to resize

Visual Guide:

Stage:
Stage to Merge:
Graft Branches:

Output Stage after Combination:
Drag to resize

General Parameters:

--  Primitive Path: The parent scene graph path of all grafted sub-trees. The Destination prim path of each grafted prim is appended to this path. See “Where to attach each subtree” above.

--  Primitive Kind: If the parent prim in Primitive path does not exist, it will be created, and set to be this kind. If the prim already exists, this parameter does nothing.

--  Parent Primitive Type: If this node generates a path where intermediate prims do not exist yet, it will create them. This controls the type of any intermediate prims this node creates.

--  Primitive Specifier: This controls the specifier(Define/Over/Class) of any intermediate prims this node creates.

--  Make Destination Primitive Paths Unique: It is possible to set multiple inputs to have the same destination path. If this parameter is off, the trees are merged. If this is on, the node adds increasing numbers on to the end of each destination path until it is unique.

--  Treat Destination Paths as Parents: Controls whether source prims will be copied as children of the specified destination prim (on), or copied directly into the destination prim (off).

--  Frame Offset Mode: Controls how/whether to edit time samples on the grafted prims. (To not edit time samples, set this to Offset and Frame Offset to 0.)

--  Frame Offset: When Frame offset mode is Offset or Match and offset, the number of frames (positive or negative) to offset the grafted time samples. Note that this parameter edits the time samples in terms of frames, not seconds.

--  Number of Source Prims: How many prims to graft.

--  Enable: Whether the node applies this graft in the output.

--  Source Prim Path: The path to the prim to grab from the second input.

--  Destination Prim Path: Where to put the grafted prim in the scene graph tree of the first input. This path is added on to the path in the Primitive Path parameter.

--  Keep Position: Keep the worldspace position of the prim(s) being grafted. This may be useful if the source and destination hierarchies have different transformation stacks.

--  Keep Material: Keep the material assignment for the prim(s) being grafted. This may be useful if the source prim’s material assignment comes from a parent but it is being grafted under a different parent that has a different material assignment.

Drag to resize