Houdini 20.0 Nodes Geometry nodes

Assemble geometry node

Cleans up a series of break operations and creates the resulting pieces.

On this page

This operator is used to finish the process of breaking a piece of geometry. It uses the groups and connected pieces created by the Break operator to output a set of disconnected pieces.


If your broken object is made into a dynamic object, you do not need to append an assemble because one will be added automatically.

The assemble node cleans up the geometry. The following screen captures show what the geometry looks like before using the assemble tool, and after.



The group that will be finalized. Ideally this should encompass all geometry that has been affected by a Break operator.

Inside Group

The group name corresponding to the inside faces created by the preceding break operators. This name should remain consistent for all breaks affecting the same geometry.

Output Prefix

The prefix applied to the name attribute and names of the groups created by the operator.

For example, an object broken into 3 parts and given an Output Prefix of piece will have three groups named piece0, piece1 and piece2.

Piece Attribute

An integer primitive attribute with the piece number will be created storing which piece the primitive belongs to.

Create Groups

Create a new group for each piece.

Create Name Attribute

Create a primitive attribute called “name” identifying primitives belonging to each piece.

Connect Inside Edges

Whether the inside faces of the broken geometry will be connected to the outside faces. When enabled, the geometry of each output piece will be fully connected.


Disabling this option can help create the illusion that the geometry is not actually broken, since the outside surface of the object remains unchanged.

Cusp Edges

Whether the edges of the output geometry will be cusped. Ideally, enabling this option will cusp the edges between the outside and inside faces of the broken object.

However, here the cusp will be applied to all acute angles in the geometry, not just the intersections between the cutting surfaces and the object.


This is another option designed to hide the appearance of fracture lines in the broken object.

However, Cusp Edges should only be used for smooth geometry with no acute angles, or for objects that are going to be cusped anyway.

Create Packed Primitives

If the output geometry contains a primitive attribute called name, a packed primitive will be created for each unique value of the name attribute. Additionally, a point attribute called name will be created to identify the piece that packed primitive contains. Create Packed Fragments controls whether Packed Fragment or Packed Geometry primitives are created from the pieces.

Otherwise, the output geometry will be packed into a Packed Geometry primitive, and the Output Prefix will be used to create the “name” point attribute.

Path Attribute

The path attribute value assigned to the newly created packed primitive. If this field is disabled or left blank, no path attribute will be created.

Create Packed Fragments

Specifies Packed Fragment primitives should be created instead of Packed Geometry primitives. This only works with primitive string attributes.


Packed Fragment primitives are more efficient if the final rendered geometry has many unique pieces. Packed Geometry primitives are more efficient if the final rendered geometry has many copies of the same piece.

Transfer Attributes

Specifies a list of attributes to transfer to the packed geometry.

Transfer Groups

Specifies a list of groups to transfer to the packed geometry.

Pivot Location

Specifies how to initialize the offset for the point referenced by the packed primitive.


PackedFragments Example for Assemble geometry node

This example shows how you can break a sphere into packed objects for use in a rigid body simulation using the Assemble SOP.

See also

Geometry nodes