Link Search Menu Expand Document

PCGEx PCGExtendedToolkit

The PCG Extended Toolkit is a free (libre) plugin that extends Unreal Engine’ Procedural Content Generation pipeline, with a focus on building clusters & pathfinding.


Installation Guides


This documentation is still heavily work-in-progress, and matches non-release branch. Sorry >.< However, every property already has helpful tooltips in editor ;)

Make sure to check the Example Project on github


All Nodes


Clusters Nodes


Connect Points · 4

Connect points according to user-defined probes.

Graphs · 4

Delaunay 2D / 3D, Voronoi 2D / 3D

Mesh to Clusters

Convert mesh/geometry topology to usable cluster clusters.

Flag Nodes

Find conditional-based states to nodes within a graph

Copy Cluster to Points

Creates copies of entire clusters to target points; much like Copy Points does.

Break to Paths

Breaks clusters edge chains into individual paths

Fuse Clusters

Fuse clusters together by finding Point/Edge and Edge/Edge intersections.

Hulls · 2

Convex hull algorithms

Partition Vertices

Create per-cluster Vtx datasets

Make Unique

Forward clusters with a new pair of unique tags. Like a copy, only much faster.

Sanitize Clusters

Ensure clusters are clean and complete

Pack Clusters

Pack Clusters

Unpack Clusters

Unpack Clusters


Edges Nodes



Pathfinding Nodes


Edges Pathfinding

Find paths connecting seeds to goals.

Plot Edges Pathfinding

Find a path that goes through multiple chained points.

Sample the navmesh to find paths

Plot Navmesh

Sample the navmesh to find a path that goes through multiple chained points.


Paths Nodes


Smooth

Smooth points properties and attributes

Solidify Path

Solidify paths into “edges”

Path × Bounds Intersections

Find intersections with points bounds.

Orient

Orient points in relation to their neighbors

Path × Path Crossings

Find crossings within & against paths.

Blend

Blend individual points between from paths’ start and end points.

Path Spline Mesh

Create SplineMesh components from paths

Fuse Collinear

Fuse collinear points on a path

Offset

Offset path along a direction

Attribute Rolling

Does a rolling operation over properties & attributes along a path

Fuse Collinear

Fuse collinear points on a path

Subdivide

Create sub-points between existing points

Write Paths Properties

Compute extra path informations

Write Tangents

Subtitle

Paths to Clusters

Convert paths to clusters.


Misc Nodes


Sort Points

Sort points using any number of properties and attributes

Partition by Values

Create complex partitions from multiple criteria

Fuse Points

Proximity-based point pruning and blending.

Attribute Remap

Highly customizable attribute remapping.

Points to Bounds

Convert point clouds to a single bounding point

Cherry Pick Points

Cherry pick points using their indices.

Reverse Points Order

Reverse current points order.

Bitmask

A simple, single bitmask attribute.

Uber Filter

Combine multiple filters

Conditional Actions

Unified approach to Match & Set.

2D Lloyd Relaxation

Applies the Lloyd Relaxation algorithm.

Meta Filter

Filter point collections based on tags & attributes using string queries

Merge Points by Tags

Merge points based on shared tags

Meta Cleanup

Keep/Remove tags & attributes using string queries

Write Index

Write current point index to an attribute

Refresh Seed

Refreshes point seeds based on their position.

Discard Points by Count

Filter point dataset by their point count.

Discard Points by Overlap

Kindda like self-pruning but for collections.


Sampling Nodes


Sample Nearest Surface

Sample information from the nearest mesh collision

Guided Trace

Sample environment using line casting

Sample Nearest Polyline

Sample informations from the nearest polyline

Sample Nearest Points

Sample points within a spherical range

Sample Overlap Stats

Compute overlap statistics between point collections

Sample Nearest Bounds

Sample within bounds

Sample Neighbors

Sample points based on edge connections