Link Search Menu Expand Document

Mesh to Clusters

PCGEx | Mesh to Clusters

Convert mesh/geometry topology to usable clusters.

The Mesh to Cluster node transforms raw mesh geometry into clusters by extracting vertices and edges, which are then copied to input points. This is useful for leveraging mesh topology within a cluster-based workflow.


In Targets
Target points to copy mesh cluster to.
Vtx
Endpoints of the output Edges
Edges
Edges associated with the output Vtxs

Table of content


The Mesh to Cluster node converts raw geometry from meshes (either specific reference or by sampling the scene) into Clusters, using geometry’ vertices and triangles to build Vtx and Edges and copy them onto the input points, much like Copy Cluster to Points does.

details/clusters-mesh-to-clusters/lead.png

Note that the current implementation is very prototype-y : when using an actor reference, only the first primitive will be processed.


Properties


Property Description
Graph Output Type Defines how the raw geometry will be converted to Vtx & Edges
Static Mesh Source Select the source for the mesh(es) to be converted.
- Constant is a single StaticMesh picker that will be used for each of the input points.
- Attribute on the other end lets you pick an attribute on the input points that contains an object path to either a StaticMesh or an Actor reference.
Static Mesh Constant The static mesh to convert to a graph & copy to input points.
Static Mesh Attribute The name of the attribute that contains a path to a StaticMesh or Actor.
FSoftObjectPath is preferred, but supports Fname, FString
Attribute Handling Lets you pick how the soft path should be handled, either as StaticMesh or an ActorReference.
Note that this is legacy is will be removed in an upcoming update to support both. Meanwhile, you still need to choose one.
Transform Details  
Inherit Scale If enabled, cluster points will be scaled by the target’ scale.
Inherit Rotation If enabled, cluster points will be scaled by the target’ rotation.
Misc  
Ignore Mesh Warning If enabled, skips over invalid meshes path without warning.
Cluster Output Settings See below.
Attributes Forwarding See below.

Graph Output Type

Output Type Description
details/clusters-mesh-to-clusters/enum-raw.png Raw
Uses the raw, unedited mesh topology.
details/clusters-mesh-to-clusters/enum-dual.png Dual
Uses the dual graph of the mesh topology.
details/clusters-mesh-to-clusters/enum-hollow.png Hollow
Uses a special combination of both raw and dual graph to create more edges.

Cluster Output Settings

See Working with Clusters.

Property Description
Edge Position If enabled, edge point’ position will be the result of that value used as a lerp between its start and end Vtx point.
Pruning  
Min Vtx Count If enabled, only ouputs clusters that have more ( > ) Vtx than the specified number.
Max Vtx Count If enabled, only ouputs clusters that have less ( < ) Vtx than the specified number.
Min Edge Count If enabled, only ouputs clusters that have more ( > ) Edge than the specified number.
Max Edge Count If enabled, only ouputs clusters that have less ( < ) Edge than the specified number.
Misc  
Refresh Edge Seed If enabled, Edge points gets a fresh seed.
Build and Cache Cluster If enabled, pre-build and cache cluster along with the point data.
This has a slight memory cost associated to it, but can offer tremendous performance improvement.
If disabled, cluster processors that comes down the line have to rebuild clusters from point data, which is very costly as they are also tested for errors and possible disconnections in the process.
Expand Clusters If enabled, also build & cache another layer of cache data.
This can have a significant memory cost, as well as a minimal performance overhead, but can greatly improve certain specific operations down the line.

Attribute Forwarding


Note that at the time of writing, attribute forwarding is not implemented

Since this node merges multiple inputs together, “Carry over” settings lets you pick-and-choose which attributes & tags carry over to the new data.

Property Description
Enabled Whether attribute forwarding is enabled or not.
Preserve Attributes Default Value If enabled, the node will attempt to create attributes on the data in a way that preserve the original, underlying default value of the attribute.
This can be critical in order to identify which data originally belonged to which, as well as properly initializing flags to a desirable default.

Note that the filters look for a single valid match amongst the list; you cannot create and/or conditions.

Filter Details

Property Description
Filter Mode Chooses how the filter operates.
- All let everything pass.
- Exclude filters out the result of the filter.
- Include only allows the items that pass the filters.
Matches Lets you define a list of checks pairs: a string value, and a Match Mode.
Comma Separated Names Easy to override, lets you specify a list of comma-separated names.
The only caveat is that you can only pick a unique match mode used for each entry.
Comma Separated Names Filter Which filter will be used along the Comma Separated Names.
Preserve PCGEx Data Most of the time you’ll want to leave it to its default value. It ensures PCGEx/ prefixed data are not captured by the filter.

Filter Modes

Mode Description
Equals Checks for strict equality of the filtered value and the associated string.
Contains Checks if the filtered value contains the associated string.
Starts With Checks if the filtered value is prefixed with the associated string.
Ends With Checks if the filtered value is suffixed with the associated string.