# Edge Transport geometry node

Copies and optionally modifies attribute values along edges networks and curves.

## Overview ¶

This node calculates attribute values as it “moves” along curves, or along edges in polygonal geometry.

The simplest form of “transport” is to copy an attribute value from the starting points to the end points. Alternatively, you can use a function to compute the attribute value at each point in the graph. For example, you can use a sum function to compute the depth of each leaf, or a maximum function to compute the maximum value of the attribute along each branch.

The node can traverse the selected edges in different ways:

• The node can treat edges with shared points as implicitly forming a directed acyclic graph and move from the root(s) of the graph along the edges to the end points.

• You must specify the “root” point(s) to start processing at. The Root choice parameter lets you use the first or last point in the geometry, or explicitly specify points to use as roots.

• Houdini edges do not have an inherent direction. This node treats each edge as proceeding from the root outward. You can reverse the direction of traversal with the Direction parameter.

• If the graph has multiple roots, the results may change if the geometry is animated, because the edge-network mode uses edge lengths to decide traversal order.

• You can set a “parent” attribute on the points to explicitly set up a graph structure for the edges.

• The node can p each edge individually. This is useful for hair/fur. In this case, avoid using geometry with shared points. If you are computing a point attribute and the edge’s points are shared, the resulting values are not well defined. This means the result may not make sense, and/or the result may change between runs or between versions of Houdini.

## Recipes ¶

To...Do this

Compute distance along the curve at each point

Set Direction to “Forward”, Operation to “Total”, Normalization off, Integrate a constant value on, Scale by edge length on, Edge split method to “Copy”.

Normalize the computed distance to a 0-1 range along the curve

Set Direction to “Forward”, Operation to “Total”, Normalization to “Per-component”, Integrate a constant value on, Scale by edge length on, Edge split method to “Copy”.

Compute the number of edges along the curve at each point

Set Direction to “Forward”, Operation to “Total”, Normalization off, Integrate a constant value on, Scale by edge length off, Edge split method to “Copy”.

## Parameters ¶

Method

How to traverse the edges between the points in the Point group.

Each Curve

Processes each curve individually. The “forward” direction of each curve is from the lowest point number to the highest point number. This mode supports both vertex and point attributes. This mode only supports polygons and curves. This mode works with closed curves.

Edge Network

The node forms a graph structure from any edges between the points in the Point group. You can set the starting points (roots) using the Root choice parameter. The node works from the root points outward. Edges at the same level are traversed by edge distance. This mode only supports point attributes. You can use this mode with any geometry type with internal edges.

Parent Attribute

This lets you explicitly set up the graph structure of the points using an attribute. Create an integer attribute named `parent` on the points (you can change the attribute name with the Parent attribute parameter). Set the value of this attribute on each point specifies the point number of that point’s parent point. This mode does not require actual edges to exist between the points.

To create a parent attribute from the edge topology (like how “Edge Network” mode works), do the following:

1. Use an Enumerate SOP to set the `parent` attribute on each point to that point’s number.

2. Use an Edge Transport node with Method set to “Edge Network”, Operation set to “Transport”, and New root value set to “Hold”.

Curve Group

When Method is “Each Curve”, only transport values along the curves in this primitive group. If this is blank, the node operates on all points.

Point Group

When Method is “Edge Network” or “Parent Attribute”, only transport values between points in this group. If this is blank, the node operates on all points.

Attribute

Transport the values of this attribute. When Method is “Each Curve”, this can be a point or vertex attribute. When Method is “Edge Network” or “Parent Attribute”, this must be a point attribute.

If this attribute does not exist, and Integrate a Constant Value is on, the attribute is created. Otherwise, if the attribute does not exist the node does nothing.

Direction

Forward

Process from the root points outward to the tip points (or from the start of each curve to the end).

Backward

Process from the tip points inward to the root points (or from the end of each curve to the start).

Parent Attribute

When Method is “Parent Attribute”, the node looks in this attribute to set up a directed acyclic graph from the points. The default is `parent`. The node treats points with invalid point numbers and their own point numbers in this attribute as roots. The node ignores any points not reachable from a root.

Root Choice

When Method is “Edge Network”, this controls which point(s) to start from.

First Point

Start from the point with the smallest point number. If after all points reachable from this root are processed there are still unprocessed points, the unprocessed point with the smallest point number is made a new root and the process repeats.

Last Point

Like “First Point” but starts from the point with the highest point number.

Group

Start from the point(s) in the Root group. If a point is reachable from multiple roots, whichever has the shortest path will apply the transport function for that point. Any points unreachable from these roots are not processed.

Root Group

When Root choice is “Group”, a group of points to use as roots for the edge network.

Operation

How the node sets the attribute values as it moves along the curves/edges.

Transport

Copy the value from the previous/parent point. If the point is a root, it uses the New root value parameter to choose the new value.

Transport from Root

Copy the value from the root. If the point is a root, it uses the New root value parameter to choose the new value.

Total

Set the value to the sum of all the values of previous/ancestor points. This operation is useful for measuring the distance from the root to each point, or counting the number of points from the root to each point.

To measure distance, turn on Scale by edge length. This scales each added value by the distance to the previous point, making the value of each point varying by the outgoing edge length.

When measuring distance or number of points, turn on Integrate a Constant Value. This treats each point’s current value as `1`.

Note

Each point receives the total of the attribute value of all the previous points up to, and not including, itself. Thus root values receive zero.

Maximum

Set the value to the maximum of this point’s value and all previous/ancestor values. If the point is a root, it just uses its current value.

Minimum

Like “Maximum”, takes the minimum.

Use Normalization

When enabled, the attribute values are normalized to a 0-1 range. The normalization will be based on the method selected in Normalization.

Normalization

How the node normalizes the attribute values.

Per-Component

Each disconnected component is scaled to an individual 0-1 range. This method finds the minimum and maximum values for each component and normalizes each point attribute by which component it belongs to.

Global

All points are scaled to a shared 0-1 range. This method finds the global minimum and maximum values for all components and normalizes each point attribute to the global range regardless of which component it belongs to.

New Root Value

When Operation is “Transport”, this controls what values to use for the roots.

Zero

Treat the value of root points as `0`.

Hold

Use the root point’s current value.

Integrate a Constant Value

When Operation is “Total”, treat each point’s current value as `1`. This lets you measure distance or number of points along the edges.

Scale by Edge Length

When Operation is “Total”, scale the value transported along an edge by the edge length. This lets you measure distance along the edges.

Rotate by Edge Angle

When transporting a vector or orient attribute, rotate the attribute by the dihedral angle between the two neighbour edges. Note that this option is not supported when backward transporting an edge network.

Edge Split Method

When processing a graph structure with Direction set to “Forward”, a point can have more than one outgoing edge. This controls how to pass the current point’s value down to multiple “child” points.

Copy

Transport the current value to each child point.

Split

Divide the current value by the number of children and pass the result to each child point.

Edge Merge Method

When processing a graph structure with Direction set to “Reverse”, a point can have more than one incoming edge. This controls how to merge the values coming up from multiple “child” points.

Use the sum of the child values.

Maximum

Use the highest of the child values.

Minimum

Use the lowest of the child values.

# Geometry nodes

• Procedurally adds an autorig component to an APEX rig

• Create an FK rig APEX graph from skeleton geometry

• Extracts APEX rig controls to a KineFX skeleton.

• Computes TRS parameters for an APEX rig from a KineFX skeleton.

• Directly authors APEX graphs.

• Lays out the nodes in an APEX graph.

• Merges together two APEX graphs.

• Procedurally build an autorig script for deferred rig building

• Adds animation to a scene.

• Adds a new character to an animation scene.

• Add a prop with a single control to an animation scene.

• Edits the animation on an APEX scene.

• Fetches the results from an APEX scene evaluation.

• Adapts a character’s skeleton to conform to terrain.

• Removes elements while trying to maintain the overall appearance.

• Creates Points or Polygons, or adds points/polys to an input.

• Creates agent primitives.

• Extracts animation or MotionClips from an agent primitive.

• Extracts the rest geometry, skeleton, and animation from an agent primitive.

• Adds new clips to agent primitives.

• Defines how agents' animation clips should be played back.

• Creates geometry describing possible transitions between animation clips.

• Creates a new agent layer that is suitable for collision detection.

• Creates point attributes that specify the rotation limits of an agent’s joints.

• Builds a constraint network to hold an agent’s limbs together.

• Writes agent definition files to disk.

• Edits the properties of agent primitives.

• Adds new shapes and layers to an agent primitive.

• Adjusts the agent’s skeleton to look at a target.

• Adds custom data to an agent definition.

• Updates an agent primitive’s pose from a geometry skeleton.

• Adds various common point attributes to agents for use by other crowd nodes.

• Provides simple proxy geometry for an agent.

• Creates parent-child relationships between agents.

• Adapts agents' legs to conform to terrain and prevent the feet from sliding.

• Adds new transform groups to agent primitives.

• Extracts geometry from agent primitives.

• Extracts geometry from agent primitives for a Vellum simulation.

• Creates an agent primitive from a geometry skeleton.

• Loads the geometry from an Alembic scene archive (.abc) file into a geometry network.

• Creates a geometry group for Alembic primitives.

• Modifies intrinsic properties of Alembic primitives.

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

• Creates control geometry for SOP-based KineFX rigs.

• Modifies values for a vector-type color attribute on the incoming geometry.

• Modifies dictionary attribute values.

• Modifies floating point attribute values on the incoming geometry.

• Modifies integer attribute values on the incoming geometry.

• Modifies values for a vector-type attribute on the incoming geometry.

• Blurs out (or relaxes) points in a mesh or a point cloud.

• Changes the size/precision Houdini uses to store an attribute.

• Combines multiple attributes into a new attribute.

• Composites vertex, point, primitive, and/or detail attributes between two or more selections.

• Copies attributes between groups of vertices, points, or primitives.

• Adds or edits user defined attributes.

• Deletes point and primitive attributes.

• Allows simple VEX expressions to modify attributes.

• Fades a point attribute in and out over time.

• A low-level node that can solve combinatorial versions of some partial differential equations on an edge-connected point cloud.

• Assigns an attribute to points specifying which of a set of models should be copied/instanced to that point, randomly or based on various rules.

• Interpolates attributes within primitives or based on explicit weights.

• Copies and flips attributes from one side of a plane to another.

• Adds or generates noise in geometry attributes.

• Interactively paint point attributes, such as color or deformation mask values, directly on geometry.

• Promotes or demotes attributes from one geometry level to another.

• Generates random attribute values of various distributions.

• Fits an attribute’s values to a new range.

• Renames or deletes point and primitive attributes.

• Modifies point attributes based on differences between two models.

• Edits string attribute values.

• Copies, moves, or swaps the contents of attributes.

• Transfers vertex, point, primitive, and/or detail attributes between two models.

• Transfers attributes between two geometries based on UV proximity.

• Computes transform matrices using vector and matrix point attributes.

• Decomposes transform point attributes into their component pieces and applies an Euler filter to the rotation component

• Runs a VOP network to modify geometry attributes.

• Runs a VEX snippet to modify attribute values.

• Samples texture map information to a point attribute.

• Creates a dictionary attribute filled with parameter values.

• Copies information from a volume onto the point attributes of another piece of geometry, with optional remapping.

• Converts primitives for ODE and Bullet solvers.

• Computes lighting values within volume primitives

• Generates ballistic projectile paths from the incoming points.

• Applies deformations to captured geometry such as bend, twist, taper, and squash/stretch.

• Deletes primitives, points, edges or breakpoints.

• Computes a 3D metamorphosis between shapes with the same topology.

• The start of a looping block.

• The start of a compile block.

• The end/output of a looping block.

• The end/output of a compile block.

• Supports Bone Deform by assigning capture weights to bones.

• Supports Bone Deform by assigning capture weights to points based on biharmonic functions on tetrahedral meshes.

• Utility node that supports Bone Capture Biharmonic by creating lines from bones with suitable attributes.

• Supports Bone Deform by assigning capture weights to points based on distance to bones.

• Uses capture attributes created from bones to deform geometry according to their movement.

• Creates default geometry for Bone objects.

• Combines two polygonal objects with boolean operators, or finds the intersection lines between two polygonal objects.

• Fractures the input geometry using cutting surfaces.

• Creates a bounding box, sphere, or rectangle for the input geometry.

• Creates a cube or six-sided rectangular box.

• Deforms the points in the first input using one or more magnets from the second input.

• Imports 2d geometry from a Composite network.

• Records and caches its input geometry for faster playback.

• Chooses whether to cook the input or re-use cached output based on configurable conditions.

• Converts array attributes into a single index-pair capture attribute.

• Converts a single index-pair capture attribute into per-point and detail array attributes.

• Adjusts capture regions and capture weights.

• Lets you paint capture attributes directly onto geometry.

• Copies capture attributes from one half of a symmetric model to the other.

• Overrides the capture weights on individual points.

• Rigidly capture input packed geometry to a SOP skeleton.

• Supports Capture and Deform operation by creating a volume within which points are captured to a bone.

• Slices, cuts or extracts points or cross-sections from a primitive.

• Repeats one or more pieces of geometry along a curve.

• Reads sample data from a chop and converts it into point positions and point attributes.

• Generates a collection of channel primitives from a MotionClip geometry.

• Creates node parameters and/or detail attributes on the character’s skeleton to drive its blend shapes.

• Applies blend shapes to a KineFX character’s geometry using the weight attributes on its skeleton.

• Adds blend shapes to a character’s skin geometry.

• Outputs one of a character mesh’s blend shapes.

• Packs Character mesh, capture pose and animation, saves them to disk, and loads them back again.

• Creates a packed geometry primitive from a rest geometry, skeleton, and animation inputs.

• Extracts the rest geometry, skeleton, and animation from an packed geometry primitive.

• Creates open or closed arcs, circles and ellipses.

• Evaluate and resample blended interpolating splines defined by one or more control polygons.

• Transforms selected geometry into a circle.

• Helps clean up dirty models.

• Removes or groups geometry on one side of a plane, or creases geometry along a plane.

• Captures low-res simulated cloth.

• Deforms geometry captured by the Cloth Capture SOP.

• Controls the volume density based on a signed distance field.

• Applies a billowy cloud like displacement noise to a fog volume.

• Splits a fog volume in half using a clipping plane.

• Fills a volume with a diffuse light.

• Applies a cloud like noise to a Fog volume.

• Creates primitive spheres used to model cumulus cloud-like shapes.

• Generates primitive spheres used to model cumulus cloud-like shapes around existing primitive spheres.

• Creates primitive spheres used to model cumulus cloud-like shapes at geometry intersection.

• Creates primitive spheres used to model cumulus cloud-like shapes around a line primitive.

• Fills a polygonal mesh with adaptively-sized primitive spheres used to model cumulus cloud-like shapes.

• Applies thin feathery like fine displacement noise to a fog volume.

• Low-level machinery to cluster points based on their positions (or any vector attribute).

• Higher-level node to cluster points based on their positions (or any vector attribute).

• Creates geometry and VDB volumes for use with DOPs collisions.

• Adds color attributes to geometry.

• Adjust surface point normals by painting.

• Evaluates a multiparm of transform parameters and applies them to the input skeleton.

• Recomputes world space or local space transforms for points in a hierarchy.

• Edits properties of a skeleton animation or motion clip.

• Configures joint rotation and translation limits.

• Configures joint properties like local center of mass and transformation limits and creates a center of mass joint.

• Determines which input skeleton components are visible for a KineFX character.

• Creates lines between nearby pieces.

• Creates an attribute with a unique value for each set of connected primitives or points.

• Creates simple geometry for use as control shapes.

• Converts geometry from one geometry type to another.

• Converts a 2D height field to a 3D VDB volume, polygon surface, or polygon soup surface.

• Converts the input geometry into line segments.

• Polygonizes metaball geometry.

• Generates the oriented surface of a tetrahedron mesh.

• Converts sparse volumes.

• Converts a Point Cloud into a VDB Points Primitive, or vice versa.

• Converts the iso-surface of a volume into a polygonal surface.

• Decomposes the input geometry into approximate convex segments.

• Copies geometry and applies transformations to the copies.

• Copies geometry in the first input onto curves of the second input.

• Copies geometry in the first input onto the points of the second input.

• Manually adds or removes a creaseweight attribute to/from polygon edges, for use with the Subdivide SOP.

• Creates a surface around cross sections.

• Assigns layers to a crowd to produce geometry variations.

• Creates motion paths from a crowd’s animation clips or a simulation.

• Deforms motion paths to avoid other agents and obstacles.

• Deforms motion paths to match target positions.

• Evaluates motion paths at a specific frame.

• Deforms motion paths to follow guiding curves.

• Layers additional animation clips onto an agent’s motion path.

• Adjusts the timing of motion paths.

• Blends an agent’s motion path into a new animation clip.

• Defines a trigger that can be used to activate transitions between animation clips.

• Populates a crowd of agent primitives.

• Lets you interactively draw Bézier curves using tools similar to 2D illustration programs, as well as polylines and NURBS.

• Finds the intersections (or points of minimum distance) between two or more curves or faces.

• Imports geometry or transforms from a DOP simulation.

• Imports scalar and vector fields from a DOP simulation.

• Imports option and record data from DOP simulations into points with point attributes.

• Generates point emission sources for debris, pyro, or particle sources from separating fractured rigid body objects.

• Runs a VEX snippet to deform geometry.

• Deletes input geometry by group, entity number, bounding volume, primitive/point/edge normals, and/or degeneracy.

• Delete Joints on a SOP Rig.

• Smooths out (or relaxes) point deformations.

• Converts any non-changing topology deforming mesh sequence into a bone-based animation.

• Attempts to prevent collisions when deforming geometry.

• Removes edges from the input polygonal geometry merging polygons with shared edges.

• Measures the distance of the shortest path along the geometry’s edges or surfaces from each start point.

• Measures distance between each point and a reference geometry.

• Measures distance of each point from a target.

• Divides, smooths, and triangulates polygons.

• Creates a curve based on user input in the viewport.

• Dynamically Time-warps the first input (the Source) using the second input (the Reference) as a reference.

• Culls the input geometry according to the specifications of the For Each SOP.

• Collapses edges and faces to their centerpoints.

• Sharpens edges by uniquing their points and recomputing point normals.

• Inserts points on the edges of polygons and optionally connects them.

• Transforms selected edges so that all edges are of equal length.

• Flips the direction of polygon edges.

• Cuts geometry along edges using guiding curves.

• Straightens selected edges.

• Copies and optionally modifies attribute values along edges networks and curves.

• Edits points, edges, or faces interactively.

• Closes, opens, or clamps end points.

• Sets an attribute on selected points or primitives to sequential numbers or strings.

• Generates a message, warning, or error, which can show up on a parent asset.

• Pushes geometry out from the center to create an exploded view.

• Export transform attributes to object nodes.

• Computes the centroid of each piece of the geometry.

• Extracts translation and orientation from a character using a given input joint.

• Creates new points where an interpolated attribute has a certain value on a curve.

• Extracts the t-pose position from the input bone, muscle, or tissue geometry.

• Computes the best-fit transform between two pieces of geometry.

• Extrudes geometry along a normal.

• Extrudes surface geometry into a volume.

• Configures joint properties used by full-body inverse kinematics solvers.

• Import animation from an FBX file as a geometry-based skeleton.

• Import a skinned character from an FBX file with animation.

• Import skin geometry from an FBX file.

• Deforms a solid piece of geometry (tetrahedral mesh) using the FEM quasistatic solver.

• Visualizes the quality of a tetrahedral mesh.

• Transfer forward kinematic motion to a SOP-based skeleton

• Creates a surface or density VDB for sourcing or deleting SOP FLIP fluid particles.

• Converts connected geometry and volumes into collision object for SOP FLIP fluids.

• Creates a domain for a SOP FLIP fluid simulation.

• Evolves an object as a FLIP fluid object inside a SOP network.

• Creates a surface or density VDB for sourcing FLIP simulations.

• Combine FLIP fields of different resolutions.

• Controls the smoothness of faceting of a surface.

• Computes tangent space information for the surface spanned by barbs.

• Transform barb vectors between feather space and object space.

• Clumps/Splits the barbs of a feather.

• Moves intersecting feathers apart.

• Creates a feather primitive for each combination of template weights found in the input curves.

• Transfers attributes from uncondensed (expanded) feathers to single-curve feathers.

• Finds the closest point to each barb point on another geometry.

• Adds noise to the barbs of a feather. The noise amount can be controlled separately along each axis (along normal, tangent, or bitangent).

• Normalizes the length and straightens feathers.

• Generates feather primitives (Agent primitives with GPU-skinning).

• For each point on a feather, find the closest point on some other geometry.

• Resamples the shaft or barbs of a feather.

• Organizes loosely drawn curves by name, so they can be input into Feather Template from Shape.

• Converts feather primitives to polygon surfaces.

• Makes feather follow the curvature of a polygon mesh.

• Blends the barb values of a set of template curves.

• Generates a feather template from shape curves.

• Expands the virtual barbs on feather curves to real curve primitives.

• Provides a collection of helpful functions for working with feather curves.

• Changes the visualization of feathers in the viewport.

• Sets the curve widths of feather shaft and barbs.

• Defines the fiber direction vector for input solid muscle geometry.

• Evolves polygonal curves as vortex filaments.

• Reads, writes, or caches geometry on disk.

• Caches (writes out once and then reads from) geometry (possibly animated) to disk.

• Caches (writes out once and then reads from) geometry (possibly animated) to disk.

• Reads and collates data from disk.

• Find instances of the same geometry pieces and replace them with packed geometry instances.

• Finds the shortest paths from start points to end points, following the edges of a surface.

• Flattens 3D geometry onto a plane.

• Compresses the output of fluid simulations to decrease size on disk

• Creates 3D text from Type 1, TrueType and OpenType fonts.

• Uses a metaball to attract or repel points or springs.

• Creates jagged mountain-like divisions of the input geometry.

• Assigns multiple muscle_id identities within a single muscle geometry.

• Modifies muscle_id identities within a Franken Muscle using a paint interface.

• Transfer a motion to a SOP-based skeleton using full-body inverse kinematics algorithm.

• Creates a set of hair-like curves across a surface.

• Merges or snaps points.

• Adds strength to a glue constraint network according to cluster values.

• Generates particles to be used as sources in a particle-based grain simulation.

• Assigns a unique integer attribute to non-touching components.

• Creates planar geometry.

• Blends the guides and skin of two grooms.

• Fetches groom data from grooming objects.

• Packs the components of a groom into a set of named Packed Primitives for the purpose of writing it to disk.

• Switches between all components of two groom streams.

• Unpacks the components of a groom from a packed groom.

• Generates groups of points, primitives, edges, or vertices according to various criteria.

• Combines point groups, primitive groups, or edge groups according to boolean operations.

• Copies groups between two pieces of geometry.

• Deletes groups of points, primitives, edges, or vertices according to patterns.

• Expands or shrinks groups of Edges, Points, Primitives, or Vertices.

• Runs VEX expressions to modify group membership.

• Constructs groups for paths between elements.

• Invert point, primitive, edge, or vertex groups.

• Group Joints on a SOP Rig.

• Sets group membership interactively by painting.

• Converts point, primitive, edge, or vertex groups into point, primitive, edge, or vertex groups.

• Groups points and primitives by ranges.

• Renames groups according to patterns.

• Transfers groups between two pieces of geometry, based on proximity.

• Groups points and primitives by lasso.

• Creates a group that includes the boundaries of the specified attribute.

• Creates group for each unique name and adds elements to that group.

• Advects guide points through a velocity volume.

• Resolves collisions of guide curves with VDB signed distance fields.

• Deforms geometry with an animated skin and optionally guide curves.

• Interactively creates and modifies guide curves.

• Creates standard primitive groups used by grooming tools.

• Quickly give hair guides some initial direction.

• Given a set of guide curves and a skin mesh, generates a mesh that can be used to interpolate guide curve influences at any point.

• Creates masking attributes for other grooming operations.

• Creates and prepares parting lines for use with hair generation.

• Modifies guide or hair using one or more operations.

• Looks up skin geometry attributes under the root point of guide curves.

• Constructs a coherent tangent space along a curve.

• Transfer hair guides between geometries.

• Converts dense hair curves to a polygon card, keeping the style and shape of the groom.

• Clumps guide curves together.

• Generates hair on a surface or from points.

• Generates a velocity field based on stroke primitives.

• Measures the distance of each point to a group of source points along a polygonal surface.

• Generates an initial heightfield volume for use with terrain tools.

• Blurs a terrain height field or mask.

• Limits height values to a certain minimum and/or maximum.

• Creates a copy of a height field or mask.

• Extracts a square of a certain width/length from a larger height volume, or resizes/moves the boundaries of the height field.

• Creates a cutout on a terrain based on geometry.

• Deforms geometry by a changing HeightField

• Displaces a height field by another field.

• Advects the input volume through a noise pattern to break up hard edges and add variety.

• Lets you draw shapes to create a mask for height field tools.

• Calculates thermal and hydraulic erosion over time (frames) to create more realistic terrain.

• Simulates the erosion from one heightfield sliding over another for a short time.

• Distributes water along a heightfield. Offers controls for adjusting the intensity, variability, and location of rainfall.

• Calculates the effect of thermal erosion on terrain for a short time.

• Imports a 2D image map from a file or compositing node into a height field or mask.

• Flattens a masked region of a heightfield terrain.

• Generates flow and flow direction layers according to the input height layer.

• Copies another layer over the mask layer, and optionally flattens the height field.

• Composites together two height fields.

• Sets all values in a heightfield layer to a fixed value.

• Sets the border voxel and compression policies on a height field volume.

• Creates a mask based on different features of the height layer.

• Creates a mask based some other geometry.

• Creates a mask where the input terrain is hollow/depressed, for example riverbeds and valleys.

• Adds vertical noise to a height field, creating peaks and valleys.

• Exports height and/or mask layers to disk as an image.

• Lets you paint values into a height or mask field using strokes.

• Patches features from one heightfield to another.

• Adds displacement in the form of a ramps, steps, stripes, Voronoi cells, or other patterns.

• Projects 3D geometry into a height field.

• Applies a material that lets you plug in textures for different layers.

• Remaps the values in a height field or mask layer.

• Changes the resolution of a height field.

• Scatters points across the surface of a height field.

• Simulates loose material sliding down inclines and piling at the bottom.

• Creates stepped plains from slopes in the terrain.

• Stitches height field tiles back together.

• Splits a height field volume into rows and columns.

• Height field specific scales and offsets.

• Visualizes elevations using a custom ramp material, and mask layers using tint colors.

• Makes holes in surfaces.

• Create and evaluate Two-Bone IK solvers on a SOP skeleton.

• Deforms the points in the first input to make room for the inflation tool.

• Instances Geometry on Points.

• Creates points with attributes at intersections between a triangle and/or curve mesh with itself, or with an optional second set of triangles and/or curves.

• Composes triangle surfaces and curves together into a single connected mesh.

• Processes its inputs using the operation of a referenced compiled block.

• Processes its inputs using operations defined by a geometry graph.

• Builds an offset surface from geometry.

• The Join op connects a sequence of faces or surfaces into a single primitive that inherits their attributes.

• Capture skin geometry to a SOP skeleton for use with Joint Deform.

• Lets you paint capture weights directly onto geometry.

• Supports Joint Deform by assigning capture weights to points based on distance to joints.

• Perform skin deformation from KineFX skeleton animation.

• Deforms input geometry in the shape of water wakes that form behind objects moving at a constant speed.

• Divides, deletes, or groups geometry based on an interactively drawn line.

• Creates fractal geometry from the recursive application of simple rules.

• The main WFC node: The solver.

• Match all features between candidate image pairs using Alicevision.

• Retrieves the depth value of each pixel from the cameras using Alicevision.

• Configure which images to process using Alicevision.

• Creates a dense geometric surface representation of the scene using Alicevision.

• The complete Alicevision photogrammetry pipeline.

• Detects 3D points with position and orientation and calibrate the cameras accordingly using Alicevision.

• Texture the generated mesh using Alicevision.

• Spread a collection of shapes along an axis or grid.

• Allows you to replace attribute values with others.

• Automatically Generates UV Attributes

• Automatic Trim Texturing node.

• An interface to change underlying biome parameters and related settings of the Labs Biome system.

• This node sets the necessary attributes on curves created in Houdini to use with Labs Biome Initialize SOP.

• Processes input terrain types and creates biome regions, assigning necessary biome attributes and data used by the suite of biome tools.

• Does a boolean on a polycurve.

• Clip geometry to a resizable box region.

• Viewport interactive boolean for hardsurface modeling.

• Converts low-resolution blockout geometry into detailed buildings using a library of user defined modules.

• Create base modules to use with the building generator, as well as override base module behavior.

• Creates buildings from blockout geometry defined by a pattern of floor modules.

• Export geometry attibutes to a CSV file.

• Creates and simulates cables based on curve or geometry input.

• Calculate the slope of a surface by comparing to a direction, and optionally blur and remap the result.

• Vertex Based Thickness Calculation

• Calculate UV distortion of a piece of geometry

• Generates different chaotic maps.

• Removes from an edge group all the edges that are not borders between different primitive islands identified by an island attribute.

• Blends Color data on 2 separate meshes based on common algorithms

• This node segments geometry based on connectivity, UV islands, proximity clustering, and custom attributes. This is very useful when paired with the multithreaded functionality of compile blocks.

• Documentation coming soon…

• Swizzles Quaternions in order to change rotation spaces

• Reorders Vector Components

• Scatters curves over curves, with many intuitive controls to go from clean geometric branches to organic vines. Duplicates of this sop can be chained together for recursive growth, approximating the look of L-Systems but much more controllable.

• Redistributes curve points based on density.

• Create a tube from a curve, with uvs and normals.

• Project a decal (localised piece of geometry and a texture) onto geometry.

• Removes pieces based on connectivity and size

• Remove light and shadow variation from photogrammetry textures.

• Prepare rigid body simulation results for export, reducing redundant geometry, cleaning normals, cleaing attributes.

• The Detail Mesh SOP allows you to project a so called detail mesh onto template geometry.

• Create a geometry 'skirt' where an object and ground plane intersect, to be used as a soft blend in a game engine.

• Create a polygon disc with uvs

• Remove edges on flat surfaces.

• Calculates the distance for each point from the nearest unshared edge

• Color sharp edges on geometry

• Adding procedural damage on inputs

• Converts an Edge Group to a Poly Curve

• Converts edge groups to polylines.

• Smooth an edge-group found in input geometry.

• Allows you to export the UV wireframe for texturing

• Extract curves from Meshes

• Utility SOP to store the filename of a file SOP as its detail attributes to be then used in other SOPs.

• Create an outline of an object projected from either an axis, or from a camera.

• Import an FBX as an archive similar to how the Alembic Archive sop works.

• This node performs Houdini’s native remeshing operation on partitioned geometry, processing each piece in parallel which greatly reduces the calculation time of traditional remeshing.

• This utility tool sets up a flowmap template on your input geometry.

• The flowmap obstacle SOP allows for easy modifications on the flowmap based on geometry.

• The flowmap SHOP is a glsl based viewport shader to preview flowmap shaders.

• A high quality realtime preview of a flowmap texture in the Houdini viewport.

• The flowmap to color SOP converts the flowmap data to vertex colors

• Runs Gaea .TOR files from inside Houdini.

• Full Pipeline Node to Take High Res Models to Low Res

• Generate Textures based on a High Poly to Low Poly match

• Creates divergence from temperature change.

• A simple flamefront combustion model.

• Sends Houdini Mesh data automatically to Zbrush

• Contains GoZ data sent from Zbrush

• Creates Groups for Inside and Outside corner points

• Invert any number of specified groups

• Converts Attributes to Groups

• Allows for grouping geometry based on properties that can be measured

• The Guide Flowmap modifies a flowmap based on a guide curve.

• Simplifies the process of blending masks together in Heightfields

• Allows you to insert a layer from another heightfield.

• Geometric representation for Houdini icon

• This OBJ sets up a camera rig to be used with the Impostor Texture ROP

• The impostor tool creates texture sheets to fake 3D objects in your game engine.

• Create UV’s for inside faces of voronoi fractured geometry.

• Summary.

• This tool allows you to run geometry through InstantMeshes and generate a quad mesh.

• The LOD Create SOP allows for easy LOD generation.

• Create and export an LOD Hierarchy as FBX

• Generate lightning effect around meshes

• Takes one or two input volume sequences and creates a seamlessly looping volume animation.

• Finds edge loops or quad loops from manually or procedurally selected start edges.

• Divide polygons into panels

• Takes a mesh or volume that is animated and loops them.

• Generates Mandelbulb geometry.

• Processes contiguous terrain tiles generated by Labs Mapbox SOPs.

• Generates textures bakes from a high resolution to low resolution model at near interactive speeds.

• Generates material_override attributes per primitive based on the assigned material.

• Measures the convex and concave curvature of a model.

• Consolidates Small UV Islands into Larger Neighbors

• Merges disconnected Polylines together like the Polypath Sop, cutting them at intersections. But with specified conditions, while preserving and merging attributes and groups.

• Sharpens the geometry based on curvature

• Clips the geometry into multiple submeshes based on a 3d grid pattern

• Makes packed geometry lying on a plane tileable.

• Multiple Min/Max/Average analysis in a single node.

• Viewport shader for motion vector textures

• Generate Several Bounding Boxes For the Input Mesh

• Detects what the bone name of the highest skinning weight influence is.

• Export point caches to be used with Unreal’s Niagara particle system.

• Import an OBJ File including its materials and textures.

• Generate Buildings from OSM Data

• Isolates Specific OSM Data Layers

• Imports Open Street Map Data

• Import input and output files attached to a work-item in PDG

• Deform geometry along a curve.

• This node creates paths between points of interest on a given terrain based on cost and avoidance attributes.

• Computes ambient occlusion, generates dirt masks, as well as identifies peaks and valleys on meshes.

• Physics Painter is a SOP that allows users to paint physics objects onto any other object.

• Allows you to interactively place individual objects in a scene.

• Warps a source mesh to match the shape of a target

• Slices new polygonal edges or points into the primary input geometry from the secondary input in various configurations.

• Slice polygons into polygons or polylines

• Apply modeling changes to deforming geometry

• The procedural smoke SOP will generate an animated volume to represent smoke.

• Resamples a curve progressively based on an attribute

• Resamples a curve progressively based on an attribute

• Simple Node to take a triangulated mesh and attempt to collapse the diagonal edges to return the mesh to a quad dominant state

• Creates a quick basic tree

• Generate polystrips on fractured geometry for extra destruction detail in game engines.

• This tool allows for fast export of an RBD Sim to bone based FBX

• Randomly selects a subset of input points or primitives.

• This tool removes inside faces for objects that are intersecting.

• Remove UV Distortion tries to reduce UV distortion by inserting new seams

• Quickly Spot Heal a Mesh

• Enables the use of Rizom UV within Houdini

• Generate roads from curves or OSM data

• Example HDA from the Rebirth Project to generate Sci Fi Panneling

• This node generates connections between points of interest based on angle and distance calculations.

• SOP Based Baking of Texture Maps

• Simple Interface to Change the Timing of an animation

• Generate a rubber band like rope around an object based on inputs.

• Creates simple 2D shapes.

• Deforms a mesh based on a sine wave curve

• Skinning Converter is a SOP that can convert any non-changing topology deforming mesh sequence into a bone based animation.

• Adds geometry to an input mesh that mimics snow buildup

• Soften Normals is a convenience SOP that is frequently used to prepare geometry for baking.

• The sphere generator creates a sphere from a cube with uv’s and normals.

• Creates a POP Fluid simulation setup for splattering.

• Split primitives into separate outputs based on normals

• Create a simple star primitive.

• The Static Fracture SOP takes static geometry data from sop level, and separates them into newly generated geometry containers on object level

• Generate the central curve (straight skeleton) for 2D input shapes.

• Generates a curve based on the internal structure of a mesh

• Orients a mesh based on UP and FRONT groups

• Loads a Substance Archive and assigns it as a material

• This tool creates 2D shapes using the superformula equation.

• Sweeps geometry along a curve.

• Clips and mirrors geometry along an axis.

• This node analyzes a HeightField and generates cost and avoidance attributes.

• The terrain layer export SOP exports a heightfield with the correct settings for Unreal.

• The terrain layer import SOP exports a heightfield with the correct settings from Unreal.

• The Terrain Mesh Output allows you to convert the plugged in heightfield into (tiled) geometry.

• The Terrain Texture Output renders image data from a heightfield.

• A scan of Luiz Kruel

• A scan of Paul Ambrosiussen

• Calculates and corrects texel density of an asset.

• Extrudes a mesh along it’s averaged normals

• Generates Curves from Photoshop File Layers

• Generates tree branches

• Manually place tree branches

• Controls other tree nodes

• This tool extracts geometry and pivot points from trees created with Labs Tree Generator tools for use with Labs Unreal PivotPainter.

• Generates leaves on branches

• Simple leaf generator for visualization purposes

• Generates a tree trunk

• Interactive version of the Trim Texture node.

• Helps preparing trim texture geometry for a Trim Texture workflow

• Displacing geometry based on a triplanar projection

• Rotates the input geometry around itself based on the timeline

• Creates a UDIM tile number attribute on primitives, points, or vertices.

• Marks and optionally repairs UV overlaps.

• Transfer uv’s between a source and target geometry.

• Converts every primitive to 0-1 UVs

• Unwraps cylindrical shaped meshes.

• Different methods of visualizing UV Data

• Exports hair to Unreal Engine.

• Pivot Painter stores model pivot and rotation information for geometry used in a shader.

• Prepare heightfield and actor instances for use with World Composition in Unreal

• Converts the input volume/VDB field to a VDB vector field and updates how the vector field will respond to transformations downstream.

• This node evaluates the geometry types of the input geometry and returns a warning message if the specified geometry type and type count are not found.

• Export a vector field, compatible with Unreal Engine.

• A simple utility that creates arrow indicators on poly primitives displaying their vertex order.

• Adjusts volume visualization mode (default / normals / motion vectors), density, colors (including greyscale colors), emission, and viewport rendering quality.

• Take a volume as an input and export a texture of the density field.

• A utility tool to initialize a WFC grid to be used with the WFC Solver

• A utility tool to paint attribute values on a grid used by the WFC Solver

• A decoder that decodes color information into Wang Tilesets.

• Sample tiles that can be used as Wang Tilesets.

• Export a pointcloud to XYZ file.

• Deforms geometry based on how you reshape control geometry.

• Create a point cloud, connected polyline, tet or hex mesh around the active region of volumes. This node creates a deformation lattice for use with the Volume Deform node.

• Reads a lidar file and imports a point cloud from its data.

• Creates polygon or NURBS lines from a position, direction, and distance.

• Solves system of linear equations.

• Animates points using an MDD file.

• Deforms geometry by using another piece of geometry to attract or repel points.

• Stores a reference on a point to a point in another geometry.

• Creates a point attribute mask based on visibility/lighting, letting you limit the effect of other nodes to areas that are visible, or facing a certain direction, or in shadow.

• Aligns the input geometry to a specific axis.

• Resizes and recenters the input geometry to match a reference bounding box.

• Reorders the primitive and point numbers of the input geometry to match some reference geometry.

• Assigns one or more materials to geometry.

• Measures area, volume, or curvature of individual elements or larger pieces of a geometry and puts the results in attributes.

• Measures point-wise thickness.

• Merges geometry from its inputs.

• Merges and names geometry from its inputs.

• Defines groupings of metaballs so that separate groupings are treated as separate surfaces when merged.

• Creates metaballs and meta-superquadric surfaces.

• Duplicates and mirrors geometry across a mirror plane.

• Parses and imports motion capture data as geometry.

• This SOP outputs live motion capture data from various devices

• Converts a skeleton animation to a MotionClip.

• Blends the animation of one MotionClip on top of another

• Smoothly loops a section of a MotionClip

• Evaluates a single frame of a MotionClip.

• Extracts the motion of joints over a set of frames from a MotionClip.

• Identifies the key poses of an animation

• Extracts the locomotion from a MotionClip and manages its representation.

• Removes the specified poses from the MotionClip.

• Adds a new sample to a MotionClip containing the given pose

• Adjusts the timing of a MotionClip

• Concatenates two MotionClips.

• Update a MotionClip using the given point list.

• Creates and modifies the muscle Vellum constraints for the input solid muscle geometry in preparation for the muscle solver.

• Activates and animates the contraction and relaxation of input solid muscle geometry.

• Creates and assigns Muscle IDs to each connected cluster of primitives on the input geometry.

• Merges muscle geometry from its inputs.

• Duplicates muscle geometry with symmetry. Muscle attributes are also copied/renamed with symmetry.

• A stroke-based paint tool for modifying muscle attributes.

• Transitions input bone, muscle, tissue, or skin geometry from their static t-poses into the start frame of their animated sequence.

• Creates and modifies the physical properties for the input solid muscle geometry in preparation for the muscle solver.

• Converts input surface geometry to a tetrahedral mesh for use as muscles.

• Computes the dynamics simulation for the muscle pass using Vellum.

• Creates and attaches line segments to input bone surface geometry that then drive muscle flexion.

• Creates a naming attribute on points or primitives allowing you to refer to them easily, similar to groups.

• Computes surface normal attribute.

• This node passes its input through to its output unchanged. It can act as a fixed place in the network for path references.

• Applies inference from an ONNX Machine Learning model.

• Merges geometry from multiple sources and allows you to define the manner in which they are grouped together and transformed.

• Deforms input geometry based on ocean spectrum volumes.

• Generates particle-based foam

• Generates particles and volumes from ocean spectrum volumes for use in simulations

• Generates volumes containing information for simulating ocean waves.

• Instances individual waveforms onto input points and generated points.

• Executes an OpenCL kernel on geometry.

• Orient Joints on a target skeleton.

• Computes orientations (frames) along curves.

• Marks the output of a sub-network.

• Packs geometry into an embedded primitive.

• Packs inputs into a folder structure.

• Replaces the contents of Packed Primitives in-place.

• Packs points into a tiled grid of packed primitives.

• Editing Packed Disk Primitives.

• Extracts contents from a packed folder structure.

• Editing Packed Primitives.

• Creates a color volume based on drawn curve

• Creates a fog volume based on drawn curve

• Creates an SDF volume based on drawn curve

• Parent Joints on a target skeleton.

• Generates a surface around the particles from a particle fluid simulation.

• Creates a set of regular points filling a tank.

• Generates trails from the incoming particles that can be used to render sparks, fireworks, and rain.

• Deforms geometry using the shape of a curve.

• Moves primitives, points, edges or breakpoints along their normals.

• Inserts periods of pendulum motion into the middle of character animations.

• Creates a planar polygonal patch.

• Fills in a 2d curve network with triangles.

• Deforms flat geometry into a pleat.

• Creates platonic solids of different types.

• Generates connectivity aware capture weights for use with Point Deform.

• Constructs an iso surface from its input points.

• Computes point cloud normal vectors and gives them a consistent direction.

• Reduces a point cloud using a point grid.

• Constructs a surface from a point cloud.

• Deforms geometry according to an arbitrary connected point mesh.

• Creates new points, optionally based on point positions in the input geometry.

• Jitters points in random directions.

• Moves points with overlapping radii away from each other, optionally on a surface.

• Generates a cloud of points around the input points.

• Splits points shared by multiple vertices, optionally only if the vertices differ in attribute values.

• Computes and manipulates velocities for points of a geometry.

• Merges points interactively.

• Creates set of regular points filling a volume.

• Creates flat or tube-shaped polygon surfaces between source and destination edge loops, with controls for the shape of the bridge.

• Creates offset polygonal geometry for planar polygonal graphs.

• Extrudes polygonal faces and edges.

• Creates straight, rounded, or custom fillets along edges and corners.

• Breaks curves where an attribute crosses a threshold.

• Helps repair invalid polygonal geometry, such as for cloth simulation.

• Fills holes with polygonal patches.

• Creates coordinate frame attributes for points and vertices.

• Extrudes polygonal faces around a pivot line.

• Creates new polygons using existing points.

• Creates a smooth polygonal patch from primitives.

• Cleans up topology of polygon curves.

• Reduces the number of polygons in a model while retaining its shape. This node preserves features, attributes, textures, and quads during reduction.

• Combines polygons into a single primitive that can be more efficient for many polygons

• The PolySpline SOP fits a spline curve to a polygon or hull and outputs a polygonal approximation of that spline.

• Divides an existing polygon into multiple new polygons.

• Constructs polygonal tubes around polylines, creating renderable geometry with smooth bends and intersections.

• Compute the difference between point transforms on two SOP skeletons.

• Assigns channel paths and/or pickscripts to geometry.

• (Deprecated) Interpolates between a set of pose-shapes based on the value of a set of drivers.

• (Deprecated) Combine result of Pose-Space Deform with rest geometry.

• (Deprecated) Packs geometry edits for pose-space deformation.

• (Deprecated) Creates common attributes used by the Pose-Space Edit SOP.

• Edits primitive, primitive attributes, and profile curves.

• Computes the principle components of volume or point data.

• Inserts periods of projectile motion into the middle of character animations.

• Helps develop the volume look both for viewport display and rendering after the pyro solve.

• Creates points suitable for sourcing into pyro simulations to create explosions, muzzle flashes, shockwaves, and detonation rings.

• Applies common post-processing effects to the results of Pyro solves.

• Generates a cloud of points around the input points suitable for pyro trails and particle simulations.

• Runs a dynamic Pyro simulation.

• Creates points for sourcing pyro and smoke simulations.

• Creates source instance points from spawn points for sourcing pyro simulations with packed sets.

• Creates a packed source set from the input volumes.

• Pyro Source Spread solves for the spreading of flame across a point cloud.

• Creates spawn points for sourcing pyro simulations with packed sets.

• Generates curves to use as trails for the Pyro Trail Source node.

• Creates points suitable for sourcing into pyro simulations to create trails for explosions.

• Runs a Python snippet to modify the incoming geometry.

• Converts an arbitrary mesh into structured quadrilaterals.

• Runs a dynamic Bullet simulation.

• Combines fractured pieces or constraints into larger clusters.

• Creates attributes describing rigid body cone twist constraints.

• Packs and creates attributes describing rigid body objects.

• Stores the primitive number and distance to the opposite face on the inside faces of fractured geometry.

• Creates attributes describing rigid body constraints.

• Creates rigid body constraint geometry from curves drawn in the viewport.

• Creates rigid body constraint geometry from interactively drawn lines in the viewport.

• Creates rigid body constraint geometry from a set of rules and conditions.

• Converts existing constraint prims into constraints with different anchor positions.

• Deforms geometry with simulated proxy geometry.

• Converts deforming geometry to animated static packed objects.

• Detects when connected faces have become separated.

• Visualize RBD fractured geometry merged with the proxy geometry, pushed out from the center to create an exploded view.

• Find instances of the same geometry pieces and replace them with packed geometry instances.

• Creates constraint groups from anchored RBD pieces groups.

• Sets attributes on packed fragments for the RBD Guide DOP.

• Packs RBD fractured geometry, saves them to disk, and loads them back again.

• Creates additional detail on the interior surfaces of fractured geometry.

• Given an untransformed reference, extracts the transforms for each piece per name, from either Geometry or Proxy Geometry, and applies them to the geometry with the corresponding name attribute.

• Fractures the input geometry based on a material type.

• Packs RBD geometry, constraints, and proxy geometry into a single geometry.

• Paints values onto geometry or constraints using strokes.

• The RBD Transform operator performs a Transform operation on all 3 source geometries (Geometry, Constraint Geometry and Proxy Geometry) at once.

• Unpacks an RBD setup into three outputs.

• Attaches RenderMan shaders to groups of faces.

• Export animation from geometry-based skeleton to an FBX file.

• Export a skinned character with geometry-based skeleton to an FBX file.

• Export a skinned character with a geometry-based skeleton to a glTF or glb (binary) file.

• Creates collision shapes for a KineFX skeleton to be used in a ragdoll RBD simulation.

• Runs a ragdoll RBD simulation on the target skeleton.

• Generates surfaces by stretching cross-sections between two guide rails.

• Imports raw binary files as point, detail, or volumes.

• Projects one surface onto another.

• Increases the number of points/CVs in a curve or surface without changing its shape.

• Scatters new guides, interpolating the properties of existing guides.

• Recreates the shape of the input surface using high-quality (nearly equilateral) triangles.

• Generates foam bubble like structure onto a point cloud.

• Subdivide input geometry to generate polygons smaller than a camera measurement.

• Rebuilds polygonal topology to straighten edges, close small holes, and remove interior geometry.

• Repacks geometry as an embedded primitive.

• Resamples one or more curves or surfaces into even length segments.

• Creates rest attributes on the geometry so procedural textures stay put on the surface as it deforms.

• Retimes the time-dependent input geometry.

• Reverses or cycles the vertex order of faces.

• Creates a reverse foot set up for the given input skeleton.

• Revolves a curve around a center axis to sweep out a surface.

• Rewires vertices to different points specified by an attribute.

• Runs a VOP network to modify geometry attributes on a KineFX rig.

• Runs a VEX snippet to modify transform attribute values on a KineFX rig.

• Attach the joints of a skeleton SOP to another, posed skeleton.

• Optimizes and runs checks on a SOP skeleton.

• Conform the rest poses of two skeletons in preparation for retargeting.

• Mirror a SOP skeleton’s pose.

• Pose and animate a SOP rig or skeleton.

• Runs a Python snippet to modify the incoming rig geometry.

• Store a static pose on a skeleton as a matrix point attribute.

• Generates ripples by displacing points along the up direction specified.

• Runs ripple simulations on geometry surfaces.

• Setup geometry for usage with Karma Room Map

• Scatters new points randomly across a surface or through a volume.

• Scatters points across a surface with randomized scale and orientation attributes for use with Copy to Points.

• Scatters points on a mesh, with density controlled by a texture.

• Export animation from a geometry-based character to the Scene (OBJ) context.

• Creates a geometry-based character with animation from the Scene (OBJ) context.

• Runs scripts when cooked.

• Lets you interactively reshape a surface by brushing.

• Adds secondary motion effects to a static or animated input KineFX joint, skeleton, or character.

• Morphs though a sequence of 3D shapes, interpolating geometry and attributes.

• Stores the rest position for the input bone, muscle, or tissue geometry.

• Runs shallow water simulations on height fields.

• Computes the post-deform or pre-deform difference of two geometries with similar topologies.

• Computes the convex hull of the input geometry and moves its polygons inwards along their normals.

• Interactively create and edit geometry-based skeletons.

• Blends the poses of multiple skeletons

• Modify an input skeleton by duplicating joints across a mirror plane.

• Builds a skin surface between any number of shape curves.

• Creates and modifies skin attributes in preparation for the skin solver.

• Converts surface geometry to a solid (tetrahedrons) and prepares the output geometry for solving with a skin solver.

• Computes the dynamics simulation for the skin pass using Vellum.

• Creates a volume filled with volumetric clouds.

• Generates an initial Sky Field volume to use with sky tools.

• Modifies a Sky Field using 2D cloud noise.

• Modifies a Sky Field using a 2D cloud pattern.

• Modifies a Sky Field using an image saved on your disk.

• Smooths out (or relaxes) polygons, meshes and curves without increasing the number of points.

• Smooths out unwanted noise in an animated input points or KineFX joint, skeleton, or MotionClip.

• Moves the selected point along its normal, with smooth rolloff to surrounding points.

• Moves the selected point, with smooth rolloff to surrounding points.

• Creates a partition of a tetrahedral mesh that can be used for finite-element fracturing.

• Allows running a SOP network iteratively over some input geometry, with the output of the network from the previous frame serving as the input for the network at the current frame.

• Reorders points and primitives in different ways, including randomly.

• Creates a sphere or ovoid surface.

• Creates spirals and helices.

• Aligns a group of primitives to each other or to an auxiliary input.

• Provides operations for moving knots within the parametric space of a NURBS curve or surface.

• Closes open areas with flat or rounded coverings.

• Lets you deform NURBS faces and NURBS surfaces by pulling points that lie directly on them.

• Deforms and animates a piece of geometry across a surface.

• Deforms a spline surface by reshaping a curve on the surface.

• Creates smooth bridging geometry between two curves or surfaces.

• Fits a spline curve to points, or a spline surface to a mesh of points.

• Extracts or manipulates profile curves.

• Creates profile curves on surfaces.

• Generates round fillets of a specified radius between two surfaces.

• Trims or creates profile curves along the intersection lines between NURBS or bezier surfaces.

• Trims away parts of a spline surface defined by a profile curve or untrims previous trims.

• Splits primitives or points into two streams.

• Spray paints random points onto a surface.

• A SOP node that sets the sprite display for points.

• Removes jitter from the input animation and handles geometry snapping of joints.

• Insets points on polygonal faces.

• Caches the input geometry in the node on command, and then uses it as the node’s output.

• Stretches two curves or surfaces to cover a smooth area.

• Low level tool for building interactive assets.

• Subdivides polygons into smoother, higher-resolution polygons.

• The Subnet op is essentially a way of creating a macro to represent a collection of ops as a single op in the Network Editor.

• Deforms points using a polygon surface.

• Creates a surface by sweeping a cross section curve along a spine curve.

• Switches between network branches based on an expression or keyframe animation.

• Switches between two network branches based on an expression or geometry test.

• Sends input geometry to a TOP subnet and retrieves the output geometry.

• The TOP Network operator contains SOP nodes for running tasks.

• Reads a CSV file creating point per row.

• Creates a smooth tangent (multi-) vector field on a polygonal surface.

• Creates a capybara, which can be used as test geometry.

• Creates a rock creature, which can be used as test geometry.

• Creates Electra, the test KineFX character.

• Creates a pig head, which can be used as test geometry..

• Creates a rubber toy, which can be used as test geometry.

• Creates a shader ball, which can be used to test shaders.

• Creates a squab, which can be used as test geometry.

• Creates a template body, which can be used as test geometry.

• Creates a template head, which can be used as test geometry.

• Creates a soldier, which can be used as test geometry.

• Provides a simple crowd simulation for testing transitions between animation clips.

• Provides a simple Bullet simulation for testing the behavior of a ragdoll.

• Creates a tetrahedral mesh that conforms to a connected mesh as much as possible.

• Creates a simple tetrahedral mesh that covers a connected mesh.

• Partitions a given tetrahedron mesh into groups of tets isolated by a given polygon mesh

• Uses computer vision to identify feature points in an image.

• Paints a mask into a texture map.

• An operator that uses computer vision to track movement between two textures embedded as two-dimensional volumes.

• Cooks the input at a different time.

• Creates and modifies tissue attributes in preparation for the tissue solver.

• Converts surface geometry to a solid (tetrahedrons) and prepares the output geometry for solving with a tissue solver.

• Computes the dynamics simulation for the Tissue pass using Vellum.

• Sets attributes used by the Toon Color Shader and Toon Outline Shader.

• Deforms a surface to match the size, shape, and texture of a different surface.

• An operator that uses computer vision to identify distinct feature points in a given image file.

• A state interface to establish correspondence from points on one surface to points on another surface.

• Non-rigidly deforms a surface to match the size and shape of a different surface.

• Lets you interactively draw a reduced quad mesh automatically snapped to existing geometry.

• Creates a torus (doughnut) shaped surface.

• Traces curves from an image file or heightfield.

• Creates trails behind points.

• The Transform operation transforms the source geometry in object space using a transformation matrix.

• Transforms the input geometry relative to a specific axis.

• Transforms the input geometry by a point attribute.

• Transforms input geometry according to transformation attributes on template geometry.

• Creates a triangular Bezier surface.

• Refines triangular meshes using various metrics.

• Connects points to form well-shaped triangles.

• Creates open or closed tubes, cones, or pyramids.

• Imports a skeleton and animation from a UsdSkel character.

• Imports the rest geometry, skeleton, and animation from a UsdSkel character.

• Imports skinned geometry from a UsdSkel character.

• Generates an edge group representing suggested seams for flattening a polygon model in UV space.

• Adjusts texture coordinates in the UV viewport by painting.

• Lets you interactively move UVs in the texture view.

• Creates flattened pieces in texture space from 3D geometry.

• Merges UVs.

• Packs UV islands efficiently into a limited area.

• Relaxes UVs by pulling them out toward the edges of the texture area.

• Assigns UVs by projecting them onto the surface from a set direction.

• Applies an image file as a textured shader to a surface.

• Assigns texture UV coordinates to geometry for use in texture and bump mapping.

• Transforms UV texture coordinates on the source geometry.

• Separates UVs into reasonably flat, non-overlapping groups.

• Processes geometry using an external program.

• Unpacks packed primitives.

• Extracts contents from a packed folder structure.

• Unpacks points from packed primitives.

• Converts packed USD primitives into normal Houdini geometry.

• The Unpaste op removes one or more pasted surfaces from a paste hierarchy, causing the hierarchy to update.

• Creates one or more empty/uniform VDB volume primitives.

• Activates voxel regions of a VDB for further processing.

• Expand or contract signed distance fields stored on VDB volume primitives.

• Moves VDBs in the input geometry along a VDB velocity field.

• Moves points in the input geometry along a VDB velocity field.

• Computes an analytic property of a VDB volumes, such as gradient or curvature.

• Clips VDB volume primitives using a bounding box or another VDB as a mask.

• Combines the values of two VDB volumes in various ways.

• Clips an SDF VDB by a convex hull.

• Tests VDBs for Bad Values and Repairs.

• Extrapolate a VDB signed distance field.

• Cuts level set VDB volume primitives into multiple pieces.

• Build an LOD Pyramid from a VDB.

• Combines many VDB volumes in various ways.

• Blends between source and target SDF VDBs.

• Create a mask of the voxels in shadow from a camera for VDB primitives.

• Deletes points inside of VDB Points primitives.

• Manipulates the Internal Groups of a VDB Points Primitive.

• Computes the steady-state air flow around VDB obstacles.

• Removes divergence from a Vector VDB.

• Rasterize points into density and attribute volumes.

• Fixes signed distance fields stored in VDB volume primitives.

• Re-samples a VDB volume primitive into a new orientation and/or voxel size.

• Reshapes signed distance fields in VDB volume primitives.

• Splits SDF VDBs into connected components.

• Smooths out the values in a VDB volume primitive.

• Smooths out SDF values in a VDB volume primitive.

• Creates an SDF VDB based on the active set of another VDB.

• Splits a vector VDB primitive into three scalar VDB primitives.

• Merges three scalar VDB into one vector VDB.

• Replaces a VDB volume with geometry that visualizes its structure.

• Generates a signed distance field (SDF) VDB volume representing the surface of a set of particles from a particle fluid simulation.

• Converts point clouds and/or point attributes into VDB volume primitives.

• Converts polygonal surfaces and/or surface attributes into VDB volume primitives.

• Fills a VDB volume with adaptively-sized spheres.

• Edit or create new vellum attach to geometry and stitch constraints, interactively.

• Interactive brushing of Vellum geometry, grains, and fluids in the viewport.

• Configures geometry for Vellum Grain constraints.

• Modifies common Vellum Constraint properties.

• Configure constraints on geometry for the Vellum solvers.

• Vellum solver setup to pre-roll fabric to drape over characters.

• Packs Vellum simulations, saves them to disk, and loads them back again.

• Packs Vellum geometry and constraints into a single geometry.

• Applies common post-processing effects to the result of Vellum solves.

• Ties Vellum points to a reference frame defined by moving geometry.

• Blends the current rest values of constraints with a rest state calculated from external geometry.

• Runs a dynamic Vellum simulation.

• Transforms geometry using the rest and solved data from Vellum Shape Match constraints.

• Unpacks a Vellum simulation into two outputs.

• Verify that a bsdf conforms to the required interface.

• Manually adds or edits attributes on vertices (rather than on points).

• Shows/hides primitives in the 3D viewer and UV editor.

• Lets you adjust display options and attach visualizers to geometry.

• Visualize the transformations and parenting of a SOP skeleton

• Creates a volume primitive.

• Modifies values on the incoming Volume and VDB primitives.

• A node that generates the ambient occlusion field of the provided density field.

• Computes analytic properties of volumes.

• Computes a speed-defined travel time from source points to voxels.

• Blurs the voxels of a volume.

• Bounds voxel data.

• Cuts polygonal objects using a signed distance field volume.

• Combines multiple volumes or VDBs within one geometry into a new volume or VDB.

• Re-compresses Volume Primitives.

• Convolves a volume by a 3×3×3 kernel.

• Deform a volume using lattice points.

• Compute the Fast Fourier Transform of volumes.

• Feathers the edges of volumes.

• Flattens many volumes into one volume.

• Combines the scalar fields of volume primitives.

• Adds or generates noise in volume/VDB primitives.

• Adds or generates noise and displaces an SDF.

• Adds or generates noise in a Vector volume/VDB.

• Ensure a set of volumes add up to one.

• Translates the motion between two image volumes into displacement vectors.

• Fill in a region of a volume with features from another volume.

• Remaps a volume according to a ramp.

• Rasterizes into a volume.

• Samples point attributes into VDBs.

• Converts a curve into a volume.

• Converts fur or hair to a volume for rendering.

• Deform a volume using lattice points.

• Converts a point cloud into a volume.

• Converts a point cloud into a volume.

• Reduces the values of a volume into a single number.

• Resamples the voxels of a volume to a new resolution.

• Resizes the bounds of a volume without changing voxels.

• Builds a Signed Distance Field from an isocontour of a volume.

• Extracts 2d slices from volumes.

• Splices overlapping volume primitives together.

• Stamps volumes instanced on points into a single target volume.

• Adaptively surfaces a volume hierarchy with a regular triangle mesh.

• Computes a trail of points through a velocity volume.

• Runs CVEX on a set of volume primitives.

• Computes a velocity volume.

• Generates a volume velocity field using curve tangents.

• Generates a velocity field within a surface geometry.

• Adjusts attributes for multi-volume visualization.

• Runs a VEX snippet to modify voxel values in a volume.

• Sets the voxels of a volume from point attributes.

• Create a line segment between points with adjacent Voronoi cells

• Fractures the input geometry by performing a Voronoi decomposition of space around the input cell points

• Given an object and points of impact on the object, this SOP generates a set of points that can be used as input to the Voronoi Fracture SOP to simulate fracturing the object from those impacts.

• Cuts the geometry into small pieces according to a set of cuts defined by polylines.

• Creates the point attributes needed to create a Vortex Force DOP.

• Fills in index and weight array pairs for points on a mesh using biharmonic functions.

• Evaluates weight arrays specified on points on a mesh at a given point within a primitive.

• Prepares the whitewater simulation for rendering.

• Sets and configures a Whitewater simulation inside a SOP network.

• Generates the emission field for whitewater simulations.

• Computes generalized winding number of surface at query points.

• Morphs between curve shapes while maintaining curve length.

• Captures surfaces to a wire, allowing you to edit the wire to deform the surface.

• Deforms geometry captured to a curve via the Wire Capture node.

• Transfers the shape of one curve to another.

• Constructs polygonal tubes around polylines, creating renderable geometry.