Merge

The Merge node allows you to combine multiple scenes into a single output scene. All objects in any of the input scenes are present in the output scene. If a location is present in more than one of the input scenes, then attribute values are taken from the left-most input, which has the location (however, the Advanced Options allow more control over this). Merge is a very versatile node for collecting multiple elements into a scene for rendering.

Tips:

A Merge node with a single input is effectively a no-Op node.

Right-click on the Merge node in the Node Graph tab input ports to delete any unused ports.

Right-click on a node while connecting a link in the Node Graph tab to display a pop-up menu of ports to connect to; this can be easier than hunting for a specific port on a Merge.

Press the tilde key (~) while connecting a link in the Node Graph tab to connect to the left-most open port on the node, or add a new port if none are free.

Connection Type

Connection Name

Function

Input

Add numbered input ports (i0, i1, i2) by pressing in the node.

The input ports you want to set for different parts of the node graph.

 

Control (UI)

Default Value

Function

showAdvancedOptions

No

When set to Yes, the advanced parameters are available. These are normally only needed when doing something unusual or complex; merging two components together to form a single model is a common case, for example merging cloth and deforming geometry together. Typically, this use of the Merge node is hidden from the user inside a show macro so it's unlikely you'll need the advanced options.

showAdvancedOptions: Yes

advanced

sumBounds

No

When enabled, bound attributes are queried for each relevant input location and the total results are used. The output bounding box at each location is expanded to be large enough to contain all the inputs at that location. This is important when merging renderable geometry together inside of components.

preserveWorldSpaceXform

No

When enabled, all inherited xform attributes (preceded by an origin statement) are applied at each location whose source input differs from that of its parent. This is only necessary in exceptional situations where there are conflicting transformations on overlapping locations of the merge inputs. Basically, this forces some locations to ignore their parent transforms so that they appear in the correct location in the scene. This is most commonly used when merging deforming geometry into a component, because the deforming geometry may have different transforms on locations shared with the non deforming geometry. If the result of the merging has objects that seem to be in the wrong position, try this option as a possible solution.

preserveInheritedAttributes

N/A

Displays a list of attribute names for which inheritance should be preserved when choosing between inputs of the Merge. Whenever a child location's source input differs from that of its parent, these attributes are queried globally and applied locally to the child location.

preferredInputAttributes

N/A

Displays a list of attribute names and indices of inputs for which the preferred value of an attribute should be read. These are exceptions to the general rule of leftmost input wins. For the listed attribute, a given input is given 'first crack' at providing the attribute in the result before the general rule is used. This is often used when merging two versions of a component to form a single output model; the first input provides most of the attributes, but a second input might provide correctly deformed geometry or other attributes that should be used in preference to the first input. Again, this is typically rolled into a show macro, so it's unlikely you'll need to work with this setting directly.

mergeGroupAttributes

N/A

Used to specify and merge group attributes of the same name from different input scenes. For example, this parameter can be used to merge different types of materials, or materials for different renderers.

inputs

inputs

N/A

Allows you to name the inputs on the Merge node.