Houdini 20.0 Nodes Geometry nodes

DOP Import 2.0 geometry node

Imports geometry or transforms from a DOP simulation.

On this page
Since 19.5

The DOP Import SOP imports geometry from objects or relationships in a DOP network, or can create points representing the object’s transforms (for use with Transform Pieces). The Import Style parameter can be used to select between the different modes of operation.

DOP objects have two distinct transforms associated with them. One comes from the Position data attached to the object. The other comes from the Geometry data on the object, which has an inherent transform associated with it. This SOP can apply either, both, or neither of these two transforms.

Point velocities

In addition to transforming the geometry, this SOP can create a velocity point attribute on the geometry.

This velocity is calculated by combining any velocity attribute on the geometry in the DOP simulation (such as those set by the Cloth Solver) and the overall object velocity and angular velocity stored in the object’s Position data. This SOP can calculate an instantaneous velocity for each point by combining the linear and angular velocities of the object, or it can integrate the two velocities over some timestep. The instantaneous velocity approach is a true representation of the velocity of each point, but if the object has a high angular velocity then rendering with these instantaneous velocities may make the object appear to be exploding in the render. In this case, integrated velocities can be used to ensure the extrapolated points stay “inside” the object’s geometry. The Integrate Over Time parameter specifies the integration interval and should be set to match your timestep, or the duration of each geometry segment when using multi-segment motion blur.

When importing DOP Objects as points, this option is disabled. The DOP Object overall velocity is always assigned to the point representing that object. The Transform Pieces SOP can create a velocity point attribute on the transformed geometry.


DOP Network

The DOP Network to import objects or relationships from.


Specifies the simulation objects that should be imported.


Specifies the relationships in the simulation to import geometry from. For example, this can be used to import the geometry of a constraint network relationship.

Do Not Trigger Simulation

If the DOP simulation being imported is out of date, the old cached value will be returned rather than trying to simulate. This avoids recursion problems when viewing a SOP chain being used by a SOP Solver that would store bad geometry in the simulation cache.

Import Style

Controls the mode of operation for this SOP.

Fetch Geometry from DOP Network

Imports geometry from the specified DOP objects or relationships. This is similar to the functionality provided by the Object Merge SOP, but geared towards DOP Networks. This node provides better control over how the geometry is transformed, and provides parameters that are easier to use for this purpose.

Create Points to Represent Objects

Creates one point per simulation object, and sets attributes on that point to represent the position, orientation, velocity, and geometry for that object. This allows for very light weight geometry to be generated from a DOP Network. For an RBD Packed Object, a point is created for each packed primitive in the geometry. The Transform Pieces SOP can be used to apply the transforms to other geometry (for example, to transform high-res pieces based on a simulation with low-res proxies).

Geometry Data Path

The subdata path for the geometry to import from the DOP objects. This can be a pattern or list of subdata paths to import geometry from. The same data path will be used for all source objects. If left blank, the object’s Geometry subdata is used.

Pack Geometry Before Merging

Creates a packed geometry primitive for each DOP object or relationship that is being imported. This can be useful to import geometry from multiple objects without merging their geometry and attributes.

Pivot Location

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

Display As

Specifies how the packed primitives should be displayed in the viewport.

Add DOP Object Path Attribute

Adds a dopobject primitive string attribute, which contains the path of the DOP Network followed by the DOP object id (or the relationship name, when importing a relationship). A doppath detail string attribute is also created, which contains the path of the creator DOP node for the primary object being imported.

Add DOP Object Name Attribute

If enabled, adds a primitive string attribute containing the name of the DOP object or relationship.

DOP Object Name Attribute

Specifies the name of the attribute to create when Add DOP Object Name Attribute is enabled.

Add DOP Data Path Attribute

If enabled, adds a primitive string attribute containing the subdata path for the imported geometry. When the Geometry Data Path contains a pattern or list of paths, this can be useful to identify where the geometry was imported from.

DOP Data Path Attribute

Specifies the name of the attribute to create when Add DOP Data Path Attribute is enabled.

Transfer Attributes

Specifies a list of attributes to transfer to the generated points when Import Style is Create Points to Represent Objects and the DOP object is an RBD Packed Object.

Transfer Groups

Specifies a list of groups to transfer to the generated points when Import Style is Create Points to Represent Objects and the DOP object is an RBD Packed Object.

Transform Geometry With Position Data

Applies the translation and rotation described by the simulation object’s Position subdata.

Transform Geometry With Geometry Data

Use the transform embedded in the Geometry data attached to the simulation object. This transform is usually set when Use Object Transform is enabled on the geometry data.

Preserve World Space Positions

Use the inverse transform of the object containing this SOP. This allows the world space position of the geometry to be independent of the object level transform. This is useful when this SOP is placed inside an object that is used as the source geometry for the simulation object whose transform is being extracted. The object level transform may be used for the initial position of the simulation object, but you may not want it to affect the world space position of the geometry output from this SOP.

Point Velocities

Specifies how point velocities will be calculated for the imported geometry. This is supported when importing a simulation object for which the Position subdata describes an overall velocity and angular velocity for the object. The Instantaneous and Integrated velocity calculations are described in the overview.

Add to Existing Velocity Attributes

Adds velocities computed from the object’s Position data to any existing velocity attribute values on the geometry. Turning off this option causes the velocity computed from the object to simply override any existing velocity attribute value.

Integrate Over Time

The time interval over which velocities are calculated when using the Integrated Point Velocities calculation. This value should be set to a single frame time, or the duration of a single geometry segment when using multi-segment motion blur.

See also

Geometry nodes