CodeFizz
ToolsDemoDocsRoadmapChangelogPricingFAQ
Get the plugin

Getting Started

  • Introduction
  • Quick Start
  • Requirements
  • Installing the CLI
  • License & Machines

Guides

  • Installing the Plugin
  • The AI Skill
  • CLI vs MCP
  • Multiple Editors
  • How It Works
  • Discovering Commands

Walkthroughs

  • Build a Blueprint with AI
  • Author a Material Graph
  • Create a Niagara System

Reference

  • Reference
  • Niagara
  • PCG
  • Materials
  • StateTree
  • Sequencer
  • Level Actors
  • Project Settings
  • Blueprints
  • Blueprint Structs
  • Enhanced Input
  • Asset Management
  • Bulk Asset Ops
  • Data Assets
  • Object Properties
  • UMG Widgets
  • Data Tables
  • Curves
  • Console Commands
  • Profiling
  • Core
  • Debug

Help

  • FAQ
  • Troubleshooting
  • For AI Agents
DocsReferencePCG

PCG

Every PCG command in CodeFizz Editor Agent, with parameters and examples.

Loading…
PreviousNiagaraNextMaterials
CodeFizz

A drop-in Unreal Engine 5 plugin that exposes the entire editor surface (Blueprints, Materials, Niagara, PCG, StateTree, Insights profiling, and more) over the Model Context Protocol. Connect Claude Code, Cursor, VS Code, or any MCP-compatible client and let your AI build inside the engine.

Product

  • Features
  • Docs
  • Tools
  • Demo
  • Roadmap
  • Changelog
  • Pricing
  • FAQ

Resources

  • Install guide
  • Discord
  • YouTube
  • Open-source edition
  • Manage subscription

Legal

  • Refund Policy
  • Privacy Policy
  • Terms of Service

© 2026 CodeFizz. All rights reserved.

CodeFizz Editor Agent is a CodeFizz product. Payments processed by Polar Software, Inc. (Polar), the Merchant of Record.

100 commands. Each shows its parameters and an example, and has a copyable deep link, so you (or an AI agent) can jump straight to one.

create_pcg_graph

Create a new empty PCG Graph asset

Creates a new UPCGGraph at the given content path. Uses UPCGGraphFactory with bSkipTemplateSelection=true to avoid the template picker dialog. Pass force=true to overwrite an existing asset at the same path.

ParameterTypeRequiredDescription
asset_pathstringYesContent Browser path for the new graph
forceboolNoOverwrite an existing asset at this path
example
cfa create_pcg_graph --asset-path /Game/PCG/PCG_Forest
create_pcg_graph_instance

Create a PCG Graph Instance bound to a parent graph

Creates a UPCGGraphInstance whose ParentGraph is set to the given source graph. The instance inherits the parent's nodes and exposes its UserParameters as overridable values via ParametersOverrides.

ParameterTypeRequiredDescription
parent_graph_pathstringYesPath to the source UPCGGraph
asset_pathstringYesContent Browser path for the new instance
example
cfa create_pcg_graph_instance --parent-graph-path /Game/PCG/PCG_Forest --asset-path /Game/PCG/PCG_Forest_Inst
create_pcg_builder_settings

Create a new PCG Builder Settings asset

Creates a UPCGBuilderSettings asset used to configure how PCG components build their output (e.g. partitioning, runtime generation). Empty settings on creation; modify via set_object_property afterward.

ParameterTypeRequiredDescription
asset_pathstringYesContent Browser path for the new asset
example
cfa create_pcg_builder_settings --asset-path /Game/PCG/BS_Default
create_pcg_compute_source

Create a new PCG Compute Source asset

Creates a UPCGComputeSource asset, an HLSL source bundle consumed by PCG compute graph nodes. Empty source on creation; edit via set_pcg_compute_source afterward.

ParameterTypeRequiredDescription
asset_pathstringYesContent Browser path for the new asset
example
cfa create_pcg_compute_source --asset-path /Game/PCG/CS_NoiseField
get_pcg_compute_source

Read the HLSL source and AdditionalSources of a PCG Compute Source asset

Loads a UPCGComputeSource and returns its Source FString plus the AdditionalSources array (each entry: index, path, name). Use this to inspect or copy shader text.

ParameterTypeRequiredDescription
asset_pathstringYesPath to the UPCGComputeSource asset
example
cfa get_pcg_compute_source --asset-path /Game/PCG/CS_NoiseField
set_pcg_compute_source

Write the HLSL source text on a PCG Compute Source asset

Replaces the Source FString on a UPCGComputeSource asset. Saves the asset on success. Sets the value reflectively via FStrProperty (no engine SetSource link dependency).

ParameterTypeRequiredDescription
asset_pathstringYesPath to the UPCGComputeSource asset
sourcestringYesNew HLSL source text (replaces the entire Source field)
example
cfa set_pcg_compute_source --asset-path /Game/PCG/CS_NoiseField --source "float Noise() { return 0.0; }"
add_pcg_compute_source_additional

Append a UComputeSource to a PCG Compute Source's AdditionalSources

Adds an entry to the inherited AdditionalSources TArray on a UPCGComputeSource. Idempotent, returns already_present=true if the entry is already in the array.

ParameterTypeRequiredDescription
asset_pathstringYesPath to the target UPCGComputeSource
additional_source_pathstringYesPath to a UComputeSource asset to add
example
cfa add_pcg_compute_source_additional --asset-path /Game/PCG/CS_Main --additional-source-path /Game/PCG/CS_Helpers
remove_pcg_compute_source_additional

Remove an entry from a PCG Compute Source's AdditionalSources

Removes by index, or by additional_source_path if index is omitted/negative. Returns the index that was removed.

ParameterTypeRequiredDescription
asset_pathstringYesPath to the target UPCGComputeSource
indexintNoArray index to remove (use -1 to match by additional_source_path)
additional_source_pathstringNoPath to remove (used when index < 0)
example
cfa remove_pcg_compute_source_additional --asset-path /Game/PCG/CS_Main --index 0
cfa remove_pcg_compute_source_additional --asset-path /Game/PCG/CS_Main --additional-source-path /Game/PCG/CS_Helpers
list_pcg_compute_sources

List all UPCGComputeSource assets via Asset Registry

Asset Registry query for UPCGComputeSource assets. Returns asset_path, asset_name, package_path. Optionally scope by package path and substring filter.

ParameterTypeRequiredDescription
pathstringNoOptional package path scope (e.g. /Game/PCG)
filterstringNoCase-sensitive substring filter on asset name
recursiveboolNoRecurse into subfolders of 'path' (default true)
example
cfa list_pcg_compute_sources
cfa list_pcg_compute_sources --path /Game/PCG --filter Noise
list_pcg_kernel_types

List EPCGKernelType enum values for the Custom HLSL node

Enumerates EPCGKernelType (Custom, PointProcessor, PointGenerator, TextureProcessor, TextureGenerator, AttributeSetProcessor) with display names and tooltips. Use the returned 'name' values when assigning the KernelType property on a Custom HLSL node.

example
cfa list_pcg_kernel_types
list_pcg_templates

List PCG Graph assets marked as templates

Scans the Asset Registry for UPCGGraph assets with bIsTemplate=true. Filters tag-only so no assets are loaded. Returns name, path, category, and description for each template.

ParameterTypeRequiredDescription
filterstringNoCase-insensitive substring filter on template name
categorystringNoExact match on the template's Category property
max_resultsintNoMaximum number of results
example
cfa list_pcg_templates
cfa list_pcg_templates --filter Forest --category Vegetation
create_pcg_graph_from_template

Create a new PCG Graph by duplicating a template

Duplicates a template UPCGGraph into a new asset using UPCGGraphFactory's TemplateGraph path (StaticDuplicateObject). Clears bIsTemplate on the resulting asset so it functions as a regular graph. Use list_pcg_templates to discover candidates.

ParameterTypeRequiredDescription
template_pathstringYesPath to the source UPCGGraph template
asset_pathstringYesContent Browser path for the new graph
example
cfa create_pcg_graph_from_template --template-path /PCG/Templates/Forest --asset-path /Game/PCG/PCG_MyForest
search_pcg_nodes

Search PCG node types (UPCGSettings subclasses) by name or category

Iterates exposed UPCGSettings classes (bExposeToLibrary, non-abstract) and returns node metadata (title, class path, category, type, description, has_preconfigured_variants). Requires at least one of filter or category to avoid flooding results.

ParameterTypeRequiredDescription
filterstringNoCase-insensitive substring on title, class name, or tooltip
categorystringNoEPCGSettingsType display or enum name (e.g. Sampler, Metadata)
max_resultsintNoMaximum number of results
example
cfa search_pcg_nodes --filter Sampler
cfa search_pcg_nodes --category Metadata
list_pcg_node_categories

List EPCGSettingsType category values for search_pcg_nodes

Enumerates all values of the EPCGSettingsType enum (Spatial, Sampler, Metadata, etc.).

example
cfa list_pcg_node_categories
list_pcg_advanced_nodes

List PCG nodes with advanced or preconfigured-only behavior

Returns nodes that have at least one Advanced pin or whose CDO returns OnlyExposePreconfiguredSettings()=true. Useful for discovering hidden nodes.

ParameterTypeRequiredDescription
filterstringNoCase-insensitive substring on title or class name
max_resultsintNoMaximum number of results
example
cfa list_pcg_advanced_nodes --filter Math
list_pcg_node_preconfigured_variants

List preconfigured variants for a PCG settings class

Returns the GetPreconfiguredInfo() array for a given UPCGSettings subclass, each entry is a preconfigured variant (label, tooltip, preconfigured_index) sharing the same UClass.

ParameterTypeRequiredDescription
class_pathstringYesFull class path or short name
example
cfa list_pcg_node_preconfigured_variants --class-path /Script/PCG.PCGAttributeRemapSettings
get_pcg_node_type_info

Get full schema for a PCG node type

Returns title, category, type, description, dynamic-input flag, full input/output pin schema (label, allowed_types, usage, status, multiple, invisible, tooltip), exposed properties (with PCG_Overridable flag and enum values), and preconfigured variants.

ParameterTypeRequiredDescription
class_pathstringYesFull class path or short name
filterstringNoSubstring filter applied to property names
include_tooltipsboolNoInclude property tooltips in the response
include_engine_internalsboolNoInclude noisy engine-internal properties
example
cfa get_pcg_node_type_info --class-path /Script/PCG.PCGAttributeFilterSettings
get_pcg_property_valid_values

Get valid values for a PCG settings property (enums, attribute pickers, extractors)

Returns the values selectable for a PCG settings property. Response 'kind' field: 'enum' (UEnumProperty/FByteProperty entries), 'attribute_input_selector' / 'attribute_output_selector' (FPCGAttributePropertySelector pickers, values[] includes @Last, @Source/@LastCreated for output, plus $Density, $Position, $Rotation, $Scale, $Transform, $BoundsMin, $BoundsMax, $Color, $Seed, $Index etc.; extractors[] lists per-type suffix groups like Vector→X/Y/Z/Length, Rotator→Roll/Pitch/Yaw/Up/Forward/Right, Transform→Location/Rotation/Scale, chain with '.': '$Rotation.Up', '$Position.X'), 'attribute_preset' (legacy FName), or 'non_enumerable'. Call BEFORE writing attribute-selector values to avoid garbage strings.

ParameterTypeRequiredDescription
class_pathstringYesUPCGSettings class path or short name
property_pathstringYesProperty name on the class
filterstringNoCase-insensitive substring filter
max_resultsintNoMaximum number of returned entries
example
cfa get_pcg_property_valid_values --class-path /Script/PCG.PCGAttributeFilterSettings --property-path Operator
read_pcg_graph

Read a PCG graph at a chosen verbosity

Reads a UPCGGraph and returns its node list. Verbosity controls payload size: 'summary' (index/name/title/type/position only), 'connections' (adds per-pin link details), 'full' (adds per-node properties with PCG_Overridable flag and graph parameters). Optional filter narrows nodes by title/class/name substring.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
verbositystringNosummary | connections | full
filterstringNoCase-insensitive substring filter on node title/class/name
include_pin_metaboolNoInclude per-pin usage/status/allowed_types/flags (default lean: label+edge_count only)
example
cfa read_pcg_graph --graph-path /Game/PCG/PCG_Forest --verbosity connections
get_pcg_node

Get full info on one PCG node

Returns pins, per-pin connections, properties (with values from the settings instance), and subgraph info if the node is a subgraph node.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoIndex into the graph's Nodes array (legacy)
example
cfa get_pcg_node --graph-path /Game/PCG/PCG_Forest --node-index 3
get_pcg_node_connections

Get pin-by-pin connections for one node

Returns input_pins / output_pins arrays where each pin has its connections list with from_index/to_index and from_pin/to_pin labels.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoIndex into the graph's Nodes array (legacy)
example
cfa get_pcg_node_connections --graph-path /Game/PCG/PCG_Forest --node-index 3
trace_pcg_connection

Trace reachable nodes from a starting node

BFS traversal up to max_depth, cycle-safe. Direction selects upstream, downstream, or both. Returns visited nodes with depth and parent_index.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoStarting node by stable name (preferred)
node_indexintNoStarting node by index (legacy)
directionstringNoupstream | downstream | both
max_depthintNoBFS depth cap (1..50)
example
cfa trace_pcg_connection --graph-path /Game/PCG/PCG_Forest --node-index 0 --direction downstream --max-depth 5
get_pcg_graph_parameters

Enumerate UserParameters on a PCG graph

Lists graph-level user parameters (FInstancedPropertyBag) with name, type, default_value, and description for each entry.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
example
cfa get_pcg_graph_parameters --graph-path /Game/PCG/PCG_Forest
get_pcg_graph_properties

List editable UPROPERTYs on the UPCGGraph asset

Returns the graph's editable properties (name, type, category, current value) for discovering version-specific graph-setting names (e.g. the HiGen multiplier differs across 5.6/5.7/5.8) before calling set_pcg_graph_property. Distinct from graph USER parameters.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
filterstringNoOptional case-insensitive substring filter on property name
example
cfa get_pcg_graph_properties --graph-path /Game/PCG/PCG_Forest --filter HiGen
set_pcg_graph_property

Set a graph-level UPROPERTY on the UPCGGraph (HiGen, landscape, cosmetic)

Sets a property on the UPCGGraph asset (e.g. bUseHierarchicalGeneration, HiGenGridSize, bUse2DGrid) and fires the graph's real PostEditChangeChainProperty, so grid linkage / compilation rebuilds and open editors refresh, exactly like editing Graph Settings by hand (raw set_asset_property skips this). Some names differ by engine version; use get_pcg_graph_properties to discover. Not a graph USER parameter.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
property_namestringYesUPROPERTY name on UPCGGraph (e.g. HiGenGridSize)
property_valueanyYesJSON value (string for export-text, e.g. "Grid512")
example
cfa set_pcg_graph_property --graph-path /Game/PCG/PCG_Forest --property-name bUseHierarchicalGeneration --property-value true
add_pcg_node

Add a node to a PCG graph

Creates a new UPCGSettings instance via NewObject and registers it with the graph via AddNode.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
settings_classstringYesUPCGSettings subclass path or short name
position_xfloatNoNode X position
position_yfloatNoNode Y position
preconfigure_indexintNoIndex into GetPreconfiguredInfo() (-1 for none)
node_commentstringNoOptional node comment
example
cfa add_pcg_node --graph-path /Game/PCG/PCG_Forest --settings-class PCGAttributeFilterSettings
delete_pcg_node

Delete a node from a PCG graph

Delete a node identified by stable name (node_name, preferred, survives deletes) OR by index (node_index, legacy).

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred)
node_indexintNoNode by index (legacy)
connect_pcg_pins

Connect two PCG pins (add edge)

Connect a source node's output pin to a destination node's input pin. Identify each node by stable name (from_node_name / to_node_name, preferred, survives deletes) OR by index (from_node_index / to_node_index, legacy, shifts when nodes are deleted).

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
from_node_namestringNoSource node by stable name (preferred)
from_node_indexintNoSource node by index (legacy)
from_pin_labelstringYesUpstream output pin label
to_node_namestringNoDestination node by stable name (preferred)
to_node_indexintNoDestination node by index (legacy)
to_pin_labelstringYesDownstream input pin label
build_pcg_graph

Atomically build a PCG graph (nodes + edges + auto-layout) in one call

Creates multiple nodes and edges in a single transaction with one save and one editor refresh, then auto-lays-out (topological columns) unless node x/y are supplied. More robust and token-efficient than add_pcg_node + connect_pcg_pins per element (no index-shift corruption, no half-built graph on failure). nodes: [{id, settings_class, params?(object), x?, y?, comment?}]; edges: [{from(id), from_pin, to(id), to_pin}]. Returns each node's stable name + index.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
nodesjsonYesArray of {id, settings_class, params?, x?, y?, comment?}
edgesjsonNoArray of {from, from_pin, to, to_pin}
clear_existingboolNoRemove existing nodes before building
auto_layoutboolNoAuto-layout when node x/y are omitted
example
cfa build_pcg_graph --json '{"graph_path":"/Game/PCG/PCG_X","nodes":[{"id":"a","settings_class":"PCGSurfaceSamplerSettings"},{"id":"b","settings_class":"PCGStaticMeshSpawnerSettings"}],"edges":[{"from":"a","from_pin":"Out","to":"b","to_pin":"In"}]}'
disconnect_pcg_pin

Remove all edges from one pin

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index (legacy, shifts on delete)
pin_labelstringYesPin label
sidestringNoinput | output
disconnect_pcg_edge

Remove a specific edge

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
from_node_indexintYesUpstream node index
from_pin_labelstringYesUpstream output pin label
to_node_indexintYesDownstream node index
to_pin_labelstringYesDownstream input pin label
set_pcg_node_property

Set a property on a node's UPCGSettings

Uses ImportText_Direct on the live settings UObject. Supports any UPROPERTY exportable type.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index (legacy, shifts on delete)
property_namestringYesProperty name
property_valueanyYesJSON value (string for export-text)
set_pcg_node_position

Move a node

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index (legacy, shifts on delete)
xfloatYesX position
yfloatYesY position
set_pcg_node_comment

Set a node's comment string

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index (legacy, shifts on delete)
commentstringYesComment string (empty hides bubble)
add_pcg_dynamic_input_pin

Add a dynamic input pin

Calls UPCGSettingsWithDynamicInputs::OnUserAddDynamicInputPin on the node.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index (legacy, shifts on delete)
remove_pcg_dynamic_input_pin

Remove a dynamic input pin

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index (legacy, shifts on delete)
pin_indexintYesDynamic pin index to remove
add_pcg_graph_parameter

Add a graph-level user parameter

Type ∈ bool|int|float|double|name|string|text|enum:<EnumPath>|object:<ClassPath>|struct:<StructPath>|soft_object:<ClassPath>

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
namestringYesParameter name
typestringYesParameter type
default_valueanyNoDefault value (JSON)
remove_pcg_graph_parameter

Remove a graph parameter

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
namestringYesParameter name
rename_pcg_graph_parameter

Rename a graph parameter

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
old_namestringYesCurrent name
new_namestringYesNew name
set_pcg_graph_parameter_value

Set a graph parameter's default value

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
namestringYesParameter name
valueanyYesNew value (JSON)
set_pcg_graph_parameter_type

Change a graph parameter's type

May invalidate existing connections inside the graph; engine handles cleanup.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
namestringYesParameter name
new_typestringYesNew type spec (same syntax as add)
set_pcg_subgraph_target

Re-target a subgraph node

Calls UPCGSubgraphSettings::SetSubgraph to repoint the SubgraphInstance at a new UPCGGraphInterface.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the parent UPCGGraph asset
node_namestringNoSubgraph node by stable name (preferred)
node_indexintNoIndex of the subgraph node (legacy)
target_graph_pathstringYesPath to the new target UPCGGraphInterface
get_pcg_subgraph_overrides

List subgraph parameter overrides

ParameterTypeRequiredDescription
graph_pathstringYesPath to the parent UPCGGraph asset
node_namestringNoSubgraph node by stable name (preferred)
node_indexintNoIndex of the subgraph node (legacy)
set_pcg_subgraph_override

Override a subgraph parameter

ParameterTypeRequiredDescription
graph_pathstringYesPath to the parent UPCGGraph asset
node_namestringNoSubgraph node by stable name (preferred)
node_indexintNoIndex of the subgraph node (legacy)
parameter_namestringYesParameter name
valueanyYesNew value (JSON)
reset_pcg_subgraph_override

Reset a subgraph parameter to default

ParameterTypeRequiredDescription
graph_pathstringYesPath to the parent UPCGGraph asset
node_namestringNoSubgraph node by stable name (preferred)
node_indexintNoIndex of the subgraph node (legacy)
parameter_namestringYesParameter name
validate_pcg_graph

Validate a PCG graph

Primes the graph compilation cache and returns graph-structure findings (unconnected required pins, dangling edges).

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
get_pcg_graph_errors

Read cached graph validation findings

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
layout_pcg_graph

Auto-layout the graph

Modes: auto (topological lanes), grid (NxN), compact.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
modestringNoLayout mode: auto|grid|compact
reroutesboolNoInsert reroute nodes on column-skipping wires (auto/compact only)
add_pcg_comment

Attach a comment to the graph

Editor-graph comment boxes are editor-only; this binds the comment to the input node as a fallback.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
comment_textstringYesComment text
force_regen_pcg_components

Generate() all components bound to a graph

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
forceboolNoPass bForce=true to UPCGComponent::Generate
cancel_pcg_generation

CancelGeneration() on all components

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
pause_pcg_regen

Toggle UPCGComponent::bActivated for a graph

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
pausedboolYestrue to pause, false to resume
set_pcg_node_property_path

Set a nested PCG node property via dotted path with [N] indexers

Auto-creates null instanced UObject sub-properties along the path. Supports struct fields, array indices, and FObjectProperty deref.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index from read_pcg_graph (legacy, shifts on delete)
property_pathstringYesDotted path with optional [N] array indexers
property_valueanyYesJSON value to write
example
cfa set_pcg_node_property_path --graph-path /Game/PCG/PCG_Forest --node-index 2 \
  --property-path "MeshSelectorParameters.MeshEntries[0].Descriptor.StaticMesh" \
  --property-value '"/Game/Meshes/SM_Tree.SM_Tree"'
get_pcg_node_property

Read a nested PCG node property value

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index from read_pcg_graph (legacy, shifts on delete)
property_pathstringYesDotted path with optional [N] array indexers
max_depthintNoRecursion depth for nested struct/object expansion
list_pcg_node_property_paths

Discover nested property paths on a PCG node

Walks reflected properties recursively. Requires 'filter' or 'root_path' to keep responses small.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index from read_pcg_graph (legacy, shifts on delete)
root_pathstringNoOptional root path to descend into before listing
filterstringNoCase-insensitive substring on the full path
max_depthintNoMaximum recursion depth
max_resultsintNoCap on returned entries
include_engine_internalsboolNoInclude noisy engine-internal properties
add_pcg_node_property_array_element

Append or insert an element into a PCG node TArray property

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index from read_pcg_graph (legacy, shifts on delete)
array_pathstringYesDotted path to the TArray property
valueanyNoOptional JSON value to seed the new element
indexintNoInsert index (negative = append)
remove_pcg_node_property_array_element

Remove an element from a PCG node TArray property

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index from read_pcg_graph (legacy, shifts on delete)
array_pathstringYesDotted path to the TArray property
element_indexintYesElement index to remove
set_pcg_node_property_class

Replace an instanced FObjectProperty with a NewObject of a specified class

When the property has a sibling '<Name>Type' TSubclassOf property (PCG MeshSelectorType convention), it is mirrored automatically.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred, survives deletes)
node_indexintNoNode by index from read_pcg_graph (legacy, shifts on delete)
property_pathstringYesPath to the FObjectProperty to replace
class_pathstringYesFull class path (e.g. /Script/PCG.PCGMeshSelectorWeighted)
set_pcg_custom_hlsl_kernel_type

Switch a Custom HLSL node's kernel type (mirrors the engine's SetKernelType)

Sets KernelType on a UPCGCustomHLSLSettings node and, for generator kernels, clears the required input pins (a no-input generator with a dangling required pin is silently culled by the GPU compiler). Use this instead of set_pcg_node_property KernelType, which leaves pins inconsistent. Processors keep their input pin (feed it a point source).

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred)
node_indexintNoNode by index (legacy)
kernel_typestringYesPointProcessor | PointGenerator | TextureProcessor | TextureGenerator | Custom | AttributeSetProcessor | AttributeSetGenerator | TextureArrayGenerator | TextureArrayProcessor
example
cfa set_pcg_custom_hlsl_kernel_type --graph-path /Game/PCG/PCG_X --node-name CustomHLSL_0 --kernel-type PointGenerator
set_pcg_static_mesh_spawner_meshes

Set a Static Mesh Spawner's weighted mesh list in one call

Ensures the node uses a Weighted mesh selector, clears existing entries, and adds one weighted entry per mesh path, replacing the verbose set_pcg_node_property_class -> add_array_element -> set_path sequence. Fires the faithful notify so entry display names and the selector refresh like a hand edit.

ParameterTypeRequiredDescription
graph_pathstringYesPath to the UPCGGraph asset
node_namestringNoNode by stable name (preferred)
node_indexintNoNode by index (legacy)
meshesjsonYesJSON array of static mesh asset paths (e.g. ["/Game/.../SM_X.SM_X"])
weightsjsonNoOptional JSON int array of per-mesh weights (parallel to meshes; default 1)
example
cfa set_pcg_static_mesh_spawner_meshes --graph-path /Game/PCG/PCG_X --node-name StaticMeshSpawner_0 --meshes '["/Game/Meshes/SM_Tree_A_01.SM_Tree_A_01","/Game/Meshes/SM_Tree_A_02.SM_Tree_A_02"]'
pcg_generate_component

Call UPCGComponent::Generate on the named actor

Wraps UPCGComponent::Generate(bForce). Triggers a delayed generation. NetMulticast Reliable on UE 5.8.

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name (empty = first)
forceboolNoForce generate even if not dirty
example
cfa pcg_generate_component --actor-label PCG_Forest_01 --force
pcg_cleanup_component

Call UPCGComponent::Cleanup on the named actor

Wraps UPCGComponent::Cleanup(bRemoveComponents).

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name
remove_componentsboolNoRemove spawned components
example
cfa pcg_cleanup_component --actor-label PCG_Forest_01
pcg_generate_local

Call UPCGComponent::GenerateLocal(Trigger, bForce, Grid)

Trigger: 0=OnLoad, 1=OnDemand, 2=AtRuntime. Grid: hierarchical grid size (0 = uninitialized). UE 5.7 takes EPCGHiGenGrid enum, 5.8 takes uint32, handled internally.

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name
forceboolNoForce generate even if not dirty
triggerintNoEPCGComponentGenerationTrigger (0/1/2)
gridintNoHierarchical grid size (0 = uninitialized)
example
cfa pcg_generate_local --actor-label PCG_Forest_01 --trigger 1 --force
pcg_cleanup_local

Call UPCGComponent::CleanupLocal(bRemoveComponents)

Scheduled (non-immediate) cleanup on the local component.

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name
remove_componentsboolNoRemove spawned components
example
cfa pcg_cleanup_local --actor-label PCG_Forest_01
pcg_cleanup_local_immediate

Call UPCGComponent::CleanupLocalImmediate, synchronous, no delayed tasks

If cleanup_local_components=true, also cleans up per-grid local PCG components.

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name
remove_componentsboolNoRemove spawned components
cleanup_local_componentsboolNoAlso cleanup local per-grid PCG components
example
cfa pcg_cleanup_local_immediate --actor-label PCG_Forest_01 --cleanup-local-components
pcg_cancel_component_generation

Call UPCGComponent::CancelGeneration on the named actor

Cancels any in-flight generation for this single component (unlike cancel_pcg_generation which works on all components bound to a graph).

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name
example
cfa pcg_cancel_component_generation --actor-label PCG_Forest_01
pcg_set_component_graph

Call UPCGComponent::SetGraph to assign a PCG graph to a component

NetMulticast Reliable, replicates to clients. Wraps UPCGComponent::SetGraph(UPCGGraphInterface*).

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
graph_pathstringYesContent path of the UPCGGraph asset
component_namestringNoOptional UPCGComponent name
example
cfa pcg_set_component_graph --actor-label PCG_Forest_01 --graph-path /Game/PCG/PCG_Forest
pcg_get_generated_output

Read the last generated FPCGDataCollection from a component

Wraps UPCGComponent::GetGeneratedGraphOutput(). Returns tagged_data: [{pin, type, tags, pinless}...].

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name
example
cfa pcg_get_generated_output --actor-label PCG_Forest_01
pcg_clear_pcg_link

Call UPCGComponent::ClearPCGLink, detach generated content into a standalone actor

Optional template_actor_class controls the spawned actor type (e.g. /Script/Engine.StaticMeshActor). Empty uses the engine default.

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name
template_actor_classstringNoFull class path of the target actor template
example
cfa pcg_clear_pcg_link --actor-label PCG_Forest_01
pcg_is_partitioned

Check whether a UPCGComponent is partitioned

Wraps UPCGComponent::IsPartitioned() + GetGridBounds().

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the owning actor
component_namestringNoOptional UPCGComponent name
example
cfa pcg_is_partitioned --actor-label PCG_World_01
pcg_list_partition_actors

List APCGPartitionActors in the world, optionally filtered by an original PCG component

If actor_label is given, returns only partition actors serving that original. Otherwise returns ALL partition actors in the editor world. Concise output, no bounds per entry.

ParameterTypeRequiredDescription
actor_labelstringNoOptional original-component owner label to filter by
component_namestringNoOptional UPCGComponent name (with actor_label)
example
cfa pcg_list_partition_actors --actor-label PCG_World_01
pcg_get_partition_actor_info

Get detailed info on one APCGPartitionActor by name

Returns grid coord, grid size, fixed bounds, runtime/2D flags, local + original component counts, and original owner actor labels.

ParameterTypeRequiredDescription
partition_actor_namestringYesActor name of the APCGPartitionActor
example
cfa pcg_get_partition_actor_info --partition-actor-name PCGPartitionGridActor_3200_4_8
pcg_aggregate_partition_output

Aggregate generated output across all partition actors of a partitioned PCG component

Iterates partition actors, collects GetLocalComponent(Original)->GetGeneratedGraphOutput(). Per-partition entries are summaries only. Pass summary_only=true to omit them entirely.

ParameterTypeRequiredDescription
actor_labelstringYesEditor label of the original PCG component owner
component_namestringNoOptional UPCGComponent name
max_entries_per_partitionintNoCap on tagged_data preview entries per partition (0 = no cap)
summary_onlyboolNoOmit per_partition array, return only aggregate counts
example
cfa pcg_aggregate_partition_output --actor-label PCG_World_01 --summary-only
pcg_schedule_graph

Schedule a PCG graph for async execution against a component as execution source

Wraps UPCGSubsystem::ScheduleGraph(UPCGGraph*, IPCGGraphExecutionSource*...). Returns the FPCGTaskId.

ParameterTypeRequiredDescription
graph_pathstringYesPCG graph asset path
actor_labelstringYesActor label whose PCG component is the execution source
component_namestringNoOptional UPCGComponent name on that actor
dependenciesstringNoOptional JSON array of FPCGTaskId integers to wait on
example
cfa pcg_schedule_graph --graph-path /Game/PCG/PCG_Forest --actor-label PCG_World_01
pcg_schedule_component

Schedule a PCG component's own graph for async execution

Wraps UPCGSubsystem::ScheduleComponent. On 5.8 grid is uint32 (0 = uninitialized/all); on 5.7 it's the EPCGHiGenGrid enum value.

ParameterTypeRequiredDescription
actor_labelstringYesActor label owning the PCG component
component_namestringNoOptional UPCGComponent name
gridintNoGrid size (uint32 on 5.8, EPCGHiGenGrid on 5.7). 0 = uninitialized/all
forceboolNoForce regeneration even if not dirty
dependenciesstringNoOptional JSON array of FPCGTaskId integers
example
cfa pcg_schedule_component --actor-label PCG_World_01 --force
pcg_schedule_cleanup

Schedule cleanup of a PCG component's graph

Wraps UPCGSubsystem::ScheduleCleanup. Returns the FPCGTaskId.

ParameterTypeRequiredDescription
actor_labelstringYesActor label owning the PCG component
component_namestringNoOptional UPCGComponent name
remove_componentsboolNoAlso remove spawned components/actors
dependenciesstringNoOptional JSON array of FPCGTaskId integers
example
cfa pcg_schedule_cleanup --actor-label PCG_World_01
pcg_schedule_refresh

Refresh a PCG component on the current or next frame (editor only)

Wraps UPCGComponent::Refresh(EPCGChangeType, bCancelExistingRefresh). Uses the safe public component API rather than UPCGSubsystem::ScheduleRefresh directly, so the component's CurrentGenerationTask invariant is respected.

ParameterTypeRequiredDescription
actor_labelstringYesActor label owning the PCG component
component_namestringNoOptional UPCGComponent name
change_typestringNoEPCGChangeType name (default "None"). Valid: None, Cosmetic, Settings, Input, Edge, Node, Structural, GenerationGrid, ShaderSource, GraphCustomization, ExternalModification
cancel_existing_refreshboolNoCancel any in-flight refresh before scheduling this one
example
cfa pcg_schedule_refresh --actor-label PCG_World_01 --change-type Structural
pcg_generate_all_components

Generate every registered PCG component in the world (editor only)

Wraps UPCGSubsystem::GenerateAllPCGComponents. Fires OnAllComponentsGenerated when done.

ParameterTypeRequiredDescription
forceboolNoForce regeneration even on clean components
example
cfa pcg_generate_all_components --force
pcg_cleanup_all_components

Cleanup every registered PCG component in the world (editor only)

Wraps UPCGSubsystem::CleanupAllPCGComponents(bPurge). purge=false (default) is a soft cleanup that lets components auto-regenerate. purge=true routes each component through CleanupLocalDeleteAllGeneratedObjects (PCGSubsystem.cpp:1910): deletes ALL generated objects, prevents auto-regen, you must call pcg_generate_all_components --force afterward to restore content. Mass actor deletion can race with editor actor-tracking refresh and emit a benign ensure() at PCGManagedResourceContainer.cpp:161; non-fatal.

ParameterTypeRequiredDescription
purgeboolNoIf true: destructive cleanup that deletes ALL generated objects. Content will NOT auto-regenerate; call pcg_generate_all_components --force afterward.
example
cfa pcg_cleanup_all_components            # SAFE soft cleanup
cfa pcg_cleanup_all_components --purge    # DESTRUCTIVE, requires manual regen after
pcg_refresh_runtime_gen_sources

Refresh all GenerateAtRuntime PCG execution sources

Wraps RefreshAllRuntimeGenExecutionSources (5.8) / deprecated RefreshAllRuntimeGenComponents (5.7). For the canonical 'refresh all runtime-gen content including partition actors' behavior, prefer pcg_runtime_generation_refresh which mirrors the pcg.RuntimeGeneration.Refresh console command (uses EPCGChangeType::GenerationGrid).

ParameterTypeRequiredDescription
change_typestringNoEPCGChangeType: None|Cosmetic|Settings|Input|Edge|Node|Structural|GenerationGrid|ShaderSource|GraphCustomization|ExternalModification
example
cfa pcg_refresh_runtime_gen_sources --change-type GenerationGrid
pcg_dirty_runtime_gen_sources

Mark all runtime-gen PCG execution sources as dirty (5.8+ only)

Wraps UPCGSubsystem::DirtyRuntimeGenExecutionSources. Returns an error on 5.7.

ParameterTypeRequiredDescription
change_typestringNoEPCGChangeType name
example
cfa pcg_dirty_runtime_gen_sources --change-type Structural
pcg_refresh_all_components_filtered

Refresh PCG components matching a filter predicate (editor only)

Wraps UPCGSubsystem::RefreshAllComponentsFiltered. Components must satisfy ALL non-empty filters.

ParameterTypeRequiredDescription
partitioned_onlyboolNoOnly refresh components where IsPartitioned() is true
runtime_generated_onlyboolNoOnly refresh components where IsManagedByRuntimeGenSystem() is true
graph_pathstringNoOnly refresh components whose graph asset path matches exactly
actor_label_patternstringNoCase-insensitive Contains match on owner actor label
change_typestringNoEPCGChangeType name
example
cfa pcg_refresh_all_components_filtered --partitioned-only --change-type Structural
pcg_flush_cache

Flush PCG results cache and compiled-graph cache

Wraps IPCGBaseSubsystem::FlushCache (IPCGBaseSubsystem.h:91 in 5.8,:90 in 5.7). Mirrors `pcg.FlushCache` console command. Use before re-running graphs whose external dependencies (textures, data tables, etc.) changed.

example
cfa pcg_flush_cache
pcg_runtime_generation_refresh

Clean up and re-generate all runtime-gen PCG components including partition actors

Exact mirror of `pcg.RuntimeGeneration.Refresh` console command. Calls UPCGSubsystem::RefreshAllRuntimeGenExecutionSources with EPCGChangeType::GenerationGrid (PCGSubsystem.h:220 in 5.8), triggers full partition-actor cleanup+regen. On 5.7 falls back to deprecated RefreshAllRuntimeGenComponents (PCGSubsystem.h:193) with the same change type. Use after a destructive pcg_cleanup_all_components --purge to reliably restore runtime-generated content.

example
cfa pcg_runtime_generation_refresh
pcg_refresh_pcg_runtime_component

Refresh a single GenerateAtRuntime PCG component (optionally flushing cache first)

Wraps UPCGBlueprintHelpers::RefreshPCGRuntimeComponent (PCGBlueprintHelpers.cpp:370 in both 5.7 and 5.8). Internally optionally calls FlushCache then RefreshRuntimeGenExecutionSource (5.8) / RefreshRuntimeGenComponent (5.7) with EPCGChangeType::GenerationGrid. Use when one specific runtime component (and its partition cells) needs re-evaluation.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional PCG component name; empty selects the first UPCGComponent
flush_cacheboolNoIf true, flush the PCG cache before refreshing
example
cfa pcg_refresh_pcg_runtime_component --actor-label PCG_Test --flush-cache
pcg_build_landscape_cache

Build the PCG landscape cache for the current world

Wraps UPCGSubsystem::BuildLandscapeCache (PCGSubsystem.h:364 in 5.8,:301 in 5.7). Mirrors `pcg.BuildLandscapeCache` console command.

ParameterTypeRequiredDescription
quietboolNoSuppress log spam during build
force_buildboolNoForce rebuild even if the cache appears up-to-date (default true)
example
cfa pcg_build_landscape_cache --force-build
pcg_clear_landscape_cache

Clear the PCG landscape cache for the current world

Wraps UPCGSubsystem::ClearLandscapeCache (PCGSubsystem.h:367 in 5.8,:304 in 5.7). Mirrors `pcg.ClearLandscapeCache` console command.

example
cfa pcg_clear_landscape_cache
pcg_is_inspecting

Check whether per-node inspection is enabled on a UPCGComponent

Wraps FPCGGraphExecutionInspection::IsInspecting (PCGGraphExecutionInspection.h:44). Access path: UPCGComponent->GetExecutionState().GetInspection().IsInspecting().

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name; empty selects first
example
cfa pcg_is_inspecting --actor-label PCG_Test
pcg_enable_node_inspection

Enable per-node inspection on a UPCGComponent

Wraps FPCGGraphExecutionInspection::EnableInspection (PCGGraphExecutionInspection.h:45). Records per-node data, GPU transfers, override application, and inactive-pin masks on the next execution. Inspection is a per-component flag, so for partitioned graphs you must also enable it on each local component on partition actors -- pass --include-partitions for that, otherwise pcg_inspect_partition_node_output will find no data.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
include_partitionsboolNoIf true and the component is partitioned, also EnableInspection on every local UPCGComponent on partition actors serving this original (APCGPartitionActor::GetLocalComponent)
example
cfa pcg_enable_node_inspection --actor-label PCG_ResourceVein
cfa pcg_enable_node_inspection --actor-label PCG_Test --include-partitions
pcg_disable_node_inspection

Disable per-node inspection on a UPCGComponent

Wraps FPCGGraphExecutionInspection::DisableInspection (PCGGraphExecutionInspection.h:46). Pair --include-partitions with the matching enable call to also disable inspection on partition locals.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
include_partitionsboolNoIf true and the component is partitioned, also DisableInspection on every local UPCGComponent on partition actors
example
cfa pcg_disable_node_inspection --actor-label PCG_Test --include-partitions
pcg_was_node_executed

Check whether a node's task executed during the last generation

Wraps FPCGGraphExecutionInspection::WasNodeExecuted (PCGGraphExecutionInspection.h:58). Stack defaults to [Component, Graph]; pass --stack-frames for nested subgraphs/loops.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
node_namestringNoNode FName (e.g. SurfaceSampler_2). Provide this OR node_id.
node_idintNoInteger index into Graph->GetNodes() (-2=input, -1=output). Provide this OR node_name.
stack_framesstringNoAdvanced JSON array of extra frame objects/loop indices appended after [Component, Graph]
example
cfa pcg_was_node_executed --actor-label PCG_Test --node-name SurfaceSampler_2
pcg_has_node_produced_data

Check whether a node produced data in the last execution

Wraps FPCGGraphExecutionInspection::HasNodeProducedData (PCGGraphExecutionInspection.h:72).

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
node_namestringNoNode FName. Provide this OR node_id.
node_idintNoInteger node index. Provide this OR node_name.
stack_framesstringNoAdvanced JSON array override
example
cfa pcg_has_node_produced_data --actor-label PCG_Test --node-name SurfaceSampler_2
pcg_get_node_inactive_pin_mask

Get the bitmask of output pins deactivated by dynamic branching

Wraps FPCGGraphExecutionInspection::GetNodeInactivePinMask (PCGGraphExecutionInspection.h:66). Returns raw uint64 mask plus resolved pin labels.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
node_namestringNoNode FName. Provide this OR node_id.
node_idintNoInteger node index. Provide this OR node_name.
stack_framesstringNoAdvanced JSON array override
example
cfa pcg_get_node_inactive_pin_mask --actor-label PCG_Test --node-name BranchA
pcg_did_node_trigger_gpu_to_cpu_readback

Check whether a node triggered a GPU->CPU readback during last execution

Wraps FPCGGraphExecutionInspection::DidNodeTriggerGPUToCPUReadback (PCGGraphExecutionInspection.h:77). Useful for perf diagnosis on GPU compute graphs.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
node_namestringNoNode FName. Provide this OR node_id.
node_idintNoInteger node index. Provide this OR node_name.
stack_framesstringNoAdvanced JSON array override
example
cfa pcg_did_node_trigger_gpu_to_cpu_readback --actor-label PCG_Test --node-name GPUNode
pcg_did_node_trigger_cpu_to_gpu_upload

Check whether a node triggered a CPU->GPU upload during last execution

Wraps FPCGGraphExecutionInspection::DidNodeTriggerCPUToGPUUpload (PCGGraphExecutionInspection.h:78).

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
node_namestringNoNode FName. Provide this OR node_id.
node_idintNoInteger node index. Provide this OR node_name.
stack_framesstringNoAdvanced JSON array override
example
cfa pcg_did_node_trigger_cpu_to_gpu_upload --actor-label PCG_Test --node-name GPUNode
pcg_node_applied_data_overrides

Check whether data overrides were applied to a node during last execution

Wraps FPCGGraphExecutionInspection::NodeAppliedDataOverrides (PCGGraphExecutionInspection.h:84).

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
node_namestringNoNode FName. Provide this OR node_id.
node_idintNoInteger node index. Provide this OR node_name.
stack_framesstringNoAdvanced JSON array override
example
cfa pcg_node_applied_data_overrides --actor-label PCG_Test --node-name Spawner
pcg_inspect_node_output

Inspect a node's output data collection (compact, AI-friendly summary)

Wraps FPCGGraphExecutionInspection::InspectData (PCGGraphExecutionInspection.h:50). Stack auto-built as [Component, Graph, Node]. Returns per-tagged-data entry: pin, type, point_count, attributes, optional preview points, tags. Never dumps full point data.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
node_namestringNoNode FName. Provide this OR node_id.
node_idintNoInteger node index. Provide this OR node_name.
stack_framesstringNoAdvanced JSON array of extra frames after [Component, Graph]
max_points_per_entryintNo0 = stats only. >0 = include sample points per entry.
include_attributesboolNoInclude attribute names per tagged-data entry
example
cfa pcg_inspect_node_output --actor-label PCG_Test --node-name SurfaceSampler_2 --max-points-per-entry 5
pcg_inspect_partition_node_output

Inspect a node's output across ALL partition cells of a partitioned PCG component

Use this for partitioned graphs (PCG_Test style). Use pcg_inspect_node_output for non-partitioned components. Walks every APCGPartitionActor referencing the original component, calls GetLocalComponent (PCGPartitionActor.h:126), and aggregates FPCGGraphExecutionInspection::InspectData (PCGGraphExecutionInspection.h:50) per local. Returns per-partition summary: grid_coord, grid_size, entries, points, tagged_data.

ParameterTypeRequiredDescription
actor_labelstringYesOriginal component's actor editor label
component_namestringNoOptional original UPCGComponent name
node_namestringNoNode FName on the shared graph. Provide this OR node_id.
node_idintNoInteger node index. Provide this OR node_name.
max_points_per_entryintNo0 = stats only. >0 = include sample points per entry.
include_attributesboolNoInclude attribute names per tagged-data entry
max_partitionsintNo0 = unlimited. >0 caps how many partition cells are walked.
example
cfa pcg_inspect_partition_node_output --actor-label PCG_Test --node-name SurfaceSampler_2
pcg_list_executed_nodes

List all nodes executed during last generation (compact)

Wraps FPCGGraphExecutionInspection::GetExecutedNodeStacks (PCGGraphExecutionInspection.h:63). One entry per node with stack_count (>1 means executed under multiple stacks, dynamic subgraphs or loop iterations). Does not dump stack contents.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
example
cfa pcg_list_executed_nodes --actor-label PCG_Test
pcg_clear_inspection_data

Clear cached inspection data on a UPCGComponent

Wraps FPCGGraphExecutionInspection::ClearInspectionData (PCGGraphExecutionInspection.h:55). Pass --clear-per-node-execution-data=false to keep per-node execution tracking while dropping the data cache.

ParameterTypeRequiredDescription
actor_labelstringYesOwner actor's editor label
component_namestringNoOptional UPCGComponent name
clear_per_node_execution_databoolNoIf false, only clears the data cache; keeps per-node execution flags
example
cfa pcg_clear_inspection_data --actor-label PCG_Test