Group Expand

The Ultimate Houdini node reference

Visit the Node Bible

To learn more, please log in or sign up for free to explore the Node Bible.
Write your awesome label here.

Group Expand

Write your awesome label here.
The Group Expand will expand the selection of your groups!
Drag to resize

Summary:

In addition to expanding the selection of groups, this node will also keep track of various attributes related to when a point or primitive was added to a group.  In practice, this node is very useful for reveal effects, acting as a fast growth solver, sourcing additional geometry into a solver over time, and much more.  Note than since it's initial release, some parameters may have changed or been moved elsewhere.  Don't worry though, all the functionality is still there.

Drag to resize

General Parameters:

Group Name:

- This is asking you what you would like the output group to be as a result of the group expand node. If you set this equal to the incoming group, then it will override the original group. If blank, then no group will be created or altered. In practice, this is nice to have because it allows you to make a new group based on the expansion if you’d like to.

Base Group:

- This is where you specify the incoming group that you’d like to expand

Group Type:

- Make sure to explicitly specify what kind of group it is. For more information about group types, please visit the group node bible entry.

Require Primitives Share Edge:

- When expanding, this ensures that only primitives that share an edge will be candidates for expansion.

Flood Fill to Connected Geometry:

- If you turn this on, then the group will expand until it encompasses the entire connected piece of geometry.

Steps:

- This determines how many times a group will expand outwards

Step Attribute:

- This keeps track of when a primitive was added to the group. In practice, this attribute can be very useful for crating different behaviors or shading settings for the primitives that are recently added to the group over time.

Constraints:

This section allows you to restrict where the expansion is allowed to occur.

Restrict by Normal:

- According to the docs, “Allows restricting growth by the curvature of the geometry. If selected, when expanding a group, it will compare the normals of adjacent components, and will only expand to components that have a normal within the specified angle.” When using this setting, make sure that you have point normals on your mesh by creating a normal node and setting the mode to points.

Normal Attribute:

- If you’d like to specify a different attribute to act as the normal, then this will allow you to do so. In practice, this may be useful if you’d like to restrict how similar neighboring colors may be along the mesh. You could, as an example, apply color through Cd, then only expand into areas of similar color as the group expands. This would allow you to add a lot more detail to the pattern that’s generated by the group expansion.

Connectivity Attribute:

- According to the docs, “This option allows using one or more attributes that specify connectivity in the geometry. When a Connectivity Attribute is given, groups will be contained within connected regions while growing, and will shrink away from boundaries in connected regions when shrinking.” In practice, this is great for times when you’d like to expand groups based on UV boundaries or rest positions.

Collision Group:

- This allows you to specify a region where the group expansion is supposed to stop or be contained within. According to the docs, “Allows specifying a group that will prevent growth while expanding. If specified, expansion will stop at the boundaries of the specified Collision Group. When Shrinking, the group will shrink away from the boundaries of the specified Collision Group.”

Contain Growth within Collision Group:

- This ensures that the only growth which is allowed to happen occurs within the specified collision group. Instead of treating the collision group as a barrier, it treats it like a container.

Allow Growth to Collision Group Boundary:

- If you’d like to group expand to go into the boundary areas of the collision group, then this parameter will enable you to do so.


Drag to resize