Houdini 20.0 Nodes Geometry nodes

TriDivide geometry node

Refines triangular meshes using various metrics.

Root-3 Subdivision is a triangle subdivision scheme. It smooths the triangular surface while subdividing, creating a smoother surface. Each two levels of subdivision will triple the number of triangles. It also preserves the original edges of the triangular mesh and ensures a regular coving is made.

Mininimum area checking prevents any triangles that have area less than the specified value or adjacent to a triangle that have area less than that value from being subdivided. Instead, these triangles are left unchanged. This applies to all triangles in the initial input mesh and any triangles generated at each iteration of the subdivision.

Edge division splits the edges of triangles. Each edge split will result in two new triangles. The longest edges are split first. This can help regularize an irregular mesh. The original edges and shape of the mesh are preserved, so there is a limit to what can be accomplished. Note, the minimum area option does not affect the mesh resulting from edge division, so it is possible to have triangles smaller than the specified area.

If a second input is provided, it is used to determine the edge lengths for the purpose of edge division. This allows one to ensure animated geometry is divided in a consistent manner. Alternatively, one can improve the result of a large scale deformation by doing edge splitting of the original using the deformed geometry as a reference. Running the deformation again will result in close to the desired lengths but use the full accuracy of the deformation tool for intermediate points.



The triangles to refine. Any non-triangles in the input group will be ignored.

Convex Polygons

Split all concave polygons to make them convex.

Root-3 Depth

The number of iterations of root-3 subdivision to perform. Note that root-3 subdivision cannot properly preserve vertex or primitive attributes due to the reordering of the primitives.

Use Min Area

Determines if triangles with area below the specified value or adjacent to a triangle with area below that value will be prevented from subdivision. This applies to both current triangles and future triangles generated at each iteration.

Min Area

The minimum area for triangles to be subdivided. Any triangle with area less than this or neighboring a triangle with area less than this will be left unchanged.

Use Projection Matrix

A projection matrix that can be used to project the triangles into camera space before measuring the Min Area. This SOP can then be used to subdivide until triangles are sufficiently small in camera space. See the internals of the Remesh To Camera SOP for an example of creating this projection matrix.

Projection Matrix

The projection matrix used to project triangles into camera space when Use Projection Matrix is enabled.

Use Bounding Box

The bounding box that can be used to restrict subdivision when Min Area is enabled. The triangles will be compared against this bounding box after having the Projection Matrix applied, if enabled.


The size of the bounding box.


The center of the bounding box.

Use Min Edge Length

Determines if the triangles will be split until a minimum edge length is reached.

Min Edge Length

The minimum distance for any edge. Any triangle edge longer than this will be split in half.

Use Number of Splits

Determines if the number of splits will be used to determine a maximum number of edge splits.

Number Splits

The maximum number of edges to be split. The longest edges will be split first.

See also

Geometry nodes