code: virtual [FPCGAttributePropertyInputSelector](API\Plugins\PCG\Metadata\FPCGAttributePropertyInputSelect-) GetInputSource ( uint32 Index ) const


module: PCG

code: virtual uint16 GetOutputType ( uint16 InputTypeId ) const


code: virtual uint32 GetInputPinNum() const


description: Return preconfigured info that will be filled in the editor palette action, allowing to create pre-configured settings

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) > GetPreconfiguredInfo() const


code: virtual bool IsSupportedInputType ( uint16 TypeId, uint32 InputIndex, bool & bHasSpecialRequirement ) const


description: If there are preconfigured info, we can skip the default settings and only expose pre-configured actions in the editor palette

code: virtual bool OnlyExposePreconfiguredSettings() const


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


className: UPCGMetadataCompareSettings

type: FPCGAttributePr...

Operation

type: EPCGMedadataCom...

Tolerance

type: double


code: virtual void ApplyPreconfiguredSettings ( const [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) & PreconfiguredInfo )


code: virtual [UPCGParamData](API\Plugins\PCG\UPCGParamData) * CreateDefaultValueParam ( uint32 Index ) const


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


description: Can be overriden by child class to support default values on unplugged pins.

code: virtual bool DoesInputSupportDefaultValue ( uint32 Index ) const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FString](API\Runtime\Core\Containers\FString) GetDefaultValueString ( uint32 Index ) const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetInputPinLabel ( uint32 Index ) const


className: UPCGMetadataMakeRotatorSettings

description: Create a Rotator from 1, 2 or 3 axis.

Operation

type: EPCGMetadataMak...


className: UPCGMetadataMakeTransformSettings


className: UPCGMetadataMakeVectorSettings

OutputType

type: EPCGMetadataTyp...


description: Derived classes can implement this to expose additional name information in the logs

code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


code: virtual void ApplyPreconfiguredSettings ( const [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) & PreconfigureInfo )


code: virtual [FPCGAttributePropertyInputSelector](API\Plugins\PCG\Metadata\FPCGAttributePropertyInputSelect-) GetInputSource ( uint32 Index ) const


className: UPCGMetadataMathsSettings

Operation

type: EPCGMedadataMat...


description: Any final migration/recovery that can be done after pins are finalized. This function should also set DataVersion to LatestVersion.

code: virtual void ApplyDeprecation ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode )


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


description: Returns true if InPin is in use by node (assuming node enabled). Can be used to communicate when a pin is not in use to user.

code: virtual bool IsPinUsedByNodeExecution ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


code: virtual void PostLoad()


className: UPCGMetadataOperationSettings

description: Deprecated* Not used anymore

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGMetadataOperationSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


className: UPCGMetadataPartitionSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGMetadataPartitionSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

PartitionAttribute

type: FName


description: Returns the current pin types, which can either be the static types from the pin properties, or a dynamic type based on connected edges.

code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


description: If the node has any dynamic pins that can change based on input or settings

code: virtual bool HasDynamicPins() const


className: UPCGMetadataRenameSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGMetadataRenameSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


code: virtual void ApplyPreconfiguredSettings ( const [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) & PreconfigureInfo )


code: virtual [FName](API\Runtime\Core\UObject\FName) GetInputPinLabel ( uint32 Index ) const


code: virtual uint32 GetInputPinNum() const


code: virtual [FPCGAttributePropertyInputSelector](API\Plugins\PCG\Metadata\FPCGAttributePropertyInputSelect-) GetInputSource ( uint32 Index ) const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) > GetPreconfiguredInfo() const


code: virtual bool IsSupportedInputType ( uint16 TypeId, uint32 InputIndex, bool & bHasSpecialRequirement ) const


code: virtual bool OnlyExposePreconfiguredSettings() const


code: virtual void PostLoad()


code: virtual void ApplyDeprecation ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode )


className: UPCGMetadataRotatorSettings

Operation

type: EPCGMedadataRot...


description: Passthrough for the simpler method, to avoid modifying the child settings already overriding this method.

code: virtual bool CanEditChange ( const [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * InProperty ) const


code: virtual bool DoesInputSupportDefaultValue ( uint32 Index ) const


code: virtual [UPCGParamData](API\Plugins\PCG\UPCGParamData) * CreateDefaultValueParam ( uint32 Index ) const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< uint16 > GetAllOutputTypes() const


code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


code: virtual [FString](API\Runtime\Core\Containers\FString) GetDefaultValueString ( uint32 Index ) const


description: Return the index of the given input pin label. INDEX_NONE if not found

code: uint32 GetInputPinIndex ( [FName](API\Runtime\Core\UObject\FName) InPinLabel ) const


description: Return the current input pin to forward to the output.

code: uint32 GetInputPinToForward() const


description: Return the type union from incident edges with the support for default values.

code: [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetInputPinType ( uint32 Index ) const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetOutputAttributeName ( [FName](API\Runtime\Core\UObject\FName) BaseName, uint32 Index ) const


description: Return the list of all the Input pins

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)() [TArray](API\Runtime\Core\Containers\TArray)< [FName](API\Runtime\Core\UObject\FName) > GetOutputDataFromPinOptions() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetOutputPinLabel ( uint32 Index ) const


code: virtual uint16 GetOutputType ( uint16 InputTypeId ) const


description: Can override to add a custom icon next to the pin label (and an optional tooltip). Return false if no override is available.

code: virtual bool GetPinExtraIcon ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin, [FName](API\Runtime\Core\UObject\FName) & OutExtraIcon, [FText](API\Runtime\Core\Internationalization\FText) & OutTooltip ) const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


code: virtual bool HasDynamicPins() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: virtual bool IsSupportedInputType ( uint16 TypeId, uint32 InputIndex, bool & bHasSpecialRequirement ) const


code: virtual uint32 GetOutputPinNum() const


className: MaxNumberOfInputs

code: static constexpr uint32 MaxNumberOfInputs = 4;


code: virtual bool HasDifferentOutputTypes() const


className: MaxNumberOfOutputs

code: static constexpr uint32 MaxNumberOfOutputs = 4;


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


code: virtual void PostLoad()


className: UPCGMetadataSettingsBase

description: If the node doesn't provide an output, check the logs to know why it failed.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, Abstract, ClassGroup=(Procedural)) class UPCGMetadataSettingsBase : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

ForceOutputConnections

type: TStaticArray< b...

description: Useful for unit tests. Allow to force a connection to allow the node to do its operation, even if nothing is connected to it.

OutputDataFromPin

description: Bydefault, output is taken from first non-param pin (aka if the second pin is a point data, the output will be this point data).


code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetInputPinLabel ( uint32 Index ) const


code: virtual uint32 GetInputPinNum() const


code: virtual uint16 GetOutputType ( uint16 InputTypeId ) const


code: virtual [FPCGAttributePropertyInputSelector](API\Plugins\PCG\Metadata\FPCGAttributePropertyInputSelect-) GetInputSource ( uint32 Index ) const


code: virtual bool IsSupportedInputType ( uint16 TypeId, uint32 InputIndex, bool & bHasSpecialRequirement ) const


className: UPCGMetadataStringOpSettings

Operation

type: EPCGMetadataStr...


code: virtual void ApplyPreconfiguredSettings ( const [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) & PreconfigureInfo )


description: Return preconfigured info that will be filled in the editor palette action, allowing to create pre-configured settings

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) > GetPreconfiguredInfo() const


description: If there are preconfigured info, we can skip the default settings and only expose pre-configured actions in the editor palette

code: virtual bool OnlyExposePreconfiguredSettings() const


className: UPCGMetadataTransformSettings

type: EPCGMedadataTra...

TransformLerpMode

type: EPCGTransformLe...


className: UPCGMetadataTrigSettings

Operation

type: EPCGMedadataTri...


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.


code: namespace PCGBlueprintHelper { [TSet](API\Runtime\Core\Containers\TSet)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UObject](API\Runtime\CoreUObject\UObject\UObject) > > PCGBlueprintHelper::GetDataDependencies ( [UPCGBlueprintElement](API\Plugins\PCG\Elements\UPCGBlueprintElement) * InElement ) }


className: UPCGMetadataVectorSettings

type: EPCGMedadataVec...


className: PCGDistanceShape

code: enum PCGDistanceShape { SphereBounds, BoxBounds, Center, }


className: PCGNormalToDensityMode

code: enum PCGNormalToDensityMode { Set, Minimum, Maximum, Add, Subtract, Multiply, Divide, }


className: PCGSpatialNoiseMode

code: enum PCGSpatialNoiseMode { Perlin2D, Caustic2D, Voronoi2D, FractionalBrownian2D, EdgeMask2D, }


code: enum PCGSpatialNoiseMask2DMode { Perlin, Caustic, FractionalBrownian, }


code: namespace PCGSplineSampler { void PCGSplineSampler::SampleInteriorData ( const [UPCGPolyLineData](API\Plugins\PCG\Data\UPCGPolyLineData) * LineData, const [UPCGSpatialData](API\Plugins\PCG\Data\UPCGSpatialData) * InBoundingShape, const [UPCGSpatialData](API\Plugins\PCG\Data\UPCGSpatialData) * InProjectionTarget, const [FPCGProjectionParams](API\Plugins\PCG\Elements\FPCGProjectionParams) & InProjectionParams, const [FPCGSplineSamplerParams](API\Plugins\PCG\Elements\FPCGSplineSamplerParams) & Params, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * OutPointData ) }


description: Derived classes can implement this to expose additional name information in the logs

code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


description: Any final migration/recovery that can be done after pins are finalized. This function should also set DataVersion to LatestVersion.

code: virtual void ApplyDeprecation ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode )


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetOutputAttributeName ( const [FPCGAttributePropertyInputSelector](API\Plugins\PCG\Metadata\FPCGAttributePropertyInputSelect-) * InSource, const [UPCGData](API\Plugins\PCG\UPCGData) * InSourceData ) const


code: virtual bool HasDynamicPins() const


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


className: UPCGAddAttributeSettings

description: No constructors are accessible with public or protected access.


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


description: Returns the current pin types, which can either be the static types from the pin properties, or a dynamic type based on connected edges.

code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


code: virtual void PostLoad()


className: UPCGAttributeFilterSettings

description: The output will be the original data with the updated metadata.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGAttributeFilterSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

type: EPCGAttributeFi...

SelectedAttributes

type: FString


className: UPCGAttributeGetFromPointIndexSettings

description: TheIndexcan be overridden by a second Params input.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGAttributeGetFromPointIndexSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


description: UpdatePins will kick off invalid edges, so this is useful for moving edges around in case of pin changes.

code: virtual void ApplyDeprecationBeforeUpdatePins ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGPin](API\Plugins\PCG\UPCGPin) >> & InputPins, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGPin](API\Plugins\PCG\UPCGPin) >> & OutputPins )


className: UPCGAttributeNoiseSettings

description: Apply some noise to an attribute/property. You can select the mode you want and a noise range. Support all numerical types and vectors/rotators.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGAttributeNoiseSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bClampResult

type: bool

description: Clamp the result between 0 and 1. Always applied if we apply noise to the density.

bInvertSource

description: Attribute = 1 - Attribute before applying the operation

Mode

type: EPCGAttributeNo...

description: Attribute = (Original op Noise), Noise in [NoiseMin, NoiseMax]

NoiseMax

type: float


className: UPCGAttributeReduceSettings

description: If the OutputAttributeName is None, we will use the InputSource name

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGAttributeReduceSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

InputSource

type: FPCGAttributePr...

Operation

type: EPCGAttributeRe...


className: UPCGAttributeSelectSettings

description: If the OutputAttributeName is None, we will use InputSource.GetName().

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGAttributeSelectSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

Axis

type: EPCGAttributeSe...


code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


code: virtual void ApplyDeprecation ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode )


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


description: If the node has any dynamic pins that can change based on input or settings

code: virtual bool HasDynamicPins() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


className: UPCGAttributeTransferSettings

description: To do the same but with a Source param data, use CreateAttribute.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGAttributeTransferSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category="PCG|Preconfigure Settings", Meta=(ForceAsFunction)) void ApplyPreconfiguredSettings ( const [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) & InPreconfigureInfo )


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

code: virtual void BeginDestroy()


description: Returns the labels of custom input pins only.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="PCG|Input & Output") [TSet](API\Runtime\Core\Containers\TSet)< [FName](API\Runtime\Core\UObject\FName) > CustomInputLabels() const


description: Returns the labels of custom output pins only.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="PCG|Input & Output") [TSet](API\Runtime\Core\Containers\TSet)< [FName](API\Runtime\Core\UObject\FName) > CustomOutputLabels() const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, BlueprintCallable, Category="PCG|Execution") void Execute ( const [FPCGDataCollection](API\Plugins\PCG\FPCGDataCollection) & Input, [FPCGDataCollection](API\Plugins\PCG\FPCGDataCollection) & Output )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintNativeEvent, Category="PCG|Execution") void ExecuteWithContext ( [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, const [FPCGDataCollection](API\Plugins\PCG\FPCGDataCollection) & Input, [FPCGDataCollection](API\Plugins\PCG\FPCGDataCollection) & Output )


description: Retrieves the execution context - note that this will not be valid outside of the Execute functions

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="PCG|Advanced", Meta=(HideSelfPin="true")) [FPCGContext](API\Plugins\PCG\FPCGContext) & GetContext() const


description: Returns true if there is an input pin with the matching label. If found, will copy the pin properties in OutFoundPin

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="PCG|Input & Output", Meta=(HideSelfPin="true")) bool GetInputPinByLabel ( [FName](API\Runtime\Core\UObject\FName) InPinLabel, [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) & OutFoundPin ) const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="PCG|Input & Output", Meta=(HideSelfPin="true")) [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > GetInputPins() const


description: Returns true if there is an output pin with the matching label. If found, will copy the pin properties in OutFoundPin

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="PCG|Input & Output", Meta=(HideSelfPin="true")) bool GetOutputPinByLabel ( [FName](API\Runtime\Core\UObject\FName) InPinLabel, [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) & OutFoundPin ) const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="PCG|Input & Output", Meta=(HideSelfPin="true")) [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > GetOutputPins() const


description: Used for filtering


description: Creates a random stream from the settings & source component

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure=false, Category="PCG|Random") [FRandomStream](API\Runtime\Core\Math\FRandomStream) GetRandomStream ( [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext ) const


description: Gets the seed from the associated settings & source component

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="PCG|Random") int GetSeed ( [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext ) const


description: Needed to be able to call certain blueprint functions

code: virtual [UWorld](API\Runtime\Engine\Engine\UWorld) * GetWorld() const


description: Called after object creation to setup the object callbacks

code: void Initialize()


description: Override for the IsCacheable node property when it depends on the settings in your node

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintNativeEvent, Category="PCG|Execution") bool IsCacheableOverride() const


description: Calls the IterationLoopBody a fixed number of times, optional parameters are used to potentially initialized the Out Data, but otherwise are used to remove the need to have variables

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure=false, Category="PCG|Flow Control", Meta=(HideSelfPin="true")) void IterationLoop ( [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, int64 NumIterations, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) *& OutData, const [UPCGSpatialData](API\Plugins\PCG\Data\UPCGSpatialData) * OptionalA, const [UPCGSpatialData](API\Plugins\PCG\Data\UPCGSpatialData) * OptionalB, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * OptionalOutData ) const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category="PCG|Flow Control") bool IterationLoopBody ( const [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, int64 Iteration, const [UPCGSpatialData](API\Plugins\PCG\Data\UPCGSpatialData) * InA, const [UPCGSpatialData](API\Plugins\PCG\Data\UPCGSpatialData) * InB, [FPCGPoint](API\Plugins\PCG\FPCGPoint) & OutPoint, [UPCGMetadata](API\Plugins\PCG\Metadata\UPCGMetadata) * OutMetadata ) const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category="PCG|Flow Control") bool NestedLoopBody ( const [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, const [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * InOuterData, const [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * InInnerData, const [FPCGPoint](API\Plugins\PCG\FPCGPoint) & InOuterPoint, const [FPCGPoint](API\Plugins\PCG\FPCGPoint) & InInnerPoint, [FPCGPoint](API\Plugins\PCG\FPCGPoint) & OutPoint, [UPCGMetadata](API\Plugins\PCG\Metadata\UPCGMetadata) * OutMetadata ) const


description: Calls the NestedLoopBody function on all nested loop pairs (e.g. (o, i) for all o in Outer, i in Inner)

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure=false, Category="PCG|FLow Control", Meta=(HideSelfPin="true")) void NestedLoop ( [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, const [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * InOuterData, const [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * InInnerData, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) *& OutData, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * OptionalOutData ) const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintNativeEvent, Category="PCG|Node Customization") [FLinearColor](API\Runtime\Core\Math\FLinearColor) NodeColorOverride() const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintNativeEvent, Category="PCG|Node Customization") [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) NodeTypeOverride() const


code: void OnDependencyChanged ( [UObject](API\Runtime\CoreUObject\UObject\UObject) * Object, [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Calls the PointLoopBody function on all points

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure=false, Category="PCG|Flow Control", Meta=(HideSelfPin="true")) void PointLoop ( [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, const [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * InData, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) *& OutData, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * OptionalOutData ) const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category="PCG|Flow Control") bool PointLoopBody ( const [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, const [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * InData, const [FPCGPoint](API\Plugins\PCG\FPCGPoint) & InPoint, [FPCGPoint](API\Plugins\PCG\FPCGPoint) & OutPoint, [UPCGMetadata](API\Plugins\PCG\Metadata\UPCGMetadata) * OutMetadata ) const


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Override for the default node name

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintNativeEvent, Category="PCG|Node Customization") [FName](API\Runtime\Core\UObject\FName) NodeTitleOverride() const


description: Called after the element duplication during execution to be able to get the context easily - internal call only

code: void SetCurrentContext ( [FPCGContext](API\Plugins\PCG\FPCGContext) * InCurrentContext )


description: Calls the VariableLoopBody function on all points, each call can return a variable number of points

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, BlueprintPure=false, Category="PCG|Flow Control", Meta=(HideSelfPin="true")) void VariableLoop ( [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, const [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * InData, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) *& OutData, [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * OptionalOutData ) const


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintImplementableEvent, Category="PCG|Flow Control") [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPoint](API\Plugins\PCG\FPCGPoint) > VariableLoopBody ( const [FPCGContext](API\Plugins\PCG\FPCGContext) & InContext, const [UPCGPointData](API\Plugins\PCG\Data\UPCGPointData) * InData, const [FPCGPoint](API\Plugins\PCG\FPCGPoint) & InPoint, [UPCGMetadata](API\Plugins\PCG\Metadata\UPCGMetadata) * OutMetadata ) const


className: UPCGBlueprintElement

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, BlueprintType, Blueprintable, HideCategories=(Object)) class UPCGBlueprintElement : public [UObject](API\Runtime\CoreUObject\UObject\UObject)

bCanBeMultithreaded

description: Controls whether this node execution can be run from a non-game thread.

bComputeFullDataCrc

description: In cases where your node is non-cacheable but is likely to yield the same results on subsequent executions, this controls whether we will do a deep & computationally intensive CRC computation (true), which will allow cache usage in downstream nodes in your graph, or, by default (false), a shallow but quick crc computation which will not be cache-friendly.

bIsCacheable

description: Controls whether results can be cached so we can bypass execution if the inputs & settings are the same in a subsequent execution.

Category

type: FText

CurrentContext

type: FPCGContext...

description: Since we duplicate the blueprint elements prior to execution, they will be unique and have a 1:1 match with their context, which allows us to store it here

CustomInputPins

type: TArray<FPCGPin...

DataDependencies

type: TSet<TObjectPt...

OnBlueprintChangedDelegate

type: FOnPCGBlueprint...

PreconfiguredInfo

type: TArray<FPCGPre...


description: Derived classes can implement this to expose additional name information in the logs

code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


description: UpdatePins will kick off invalid edges, so this is useful for moving edges around in case of pin changes.

code: virtual void ApplyDeprecationBeforeUpdatePins ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGPin](API\Plugins\PCG\UPCGPin) >> & InputPins, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGPin](API\Plugins\PCG\UPCGPin) >> & OutputPins )


code: virtual void ApplyPreconfiguredSettings ( const [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) & InPreconfiguredsInfo )


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

code: virtual void BeginDestroy()


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


description: There is a weird issue where the BP class is not set correctly in some Server cases. We can try to recover if the PropertyClass is null.

code: virtual void FixingOverridableParamPropertyClass ( [FPCGSettingsOverridableParam](API\Plugins\PCG\FPCGSettingsOverridableParam) & Param ) const


description: Can be overridden to add more custom params (like in BP).

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGSettingsOverridableParam](API\Plugins\PCG\FPCGSettingsOverridableParam) > GatherOverridableParams() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGBlueprintElement](API\Plugins\PCG\Elements\UPCGBlueprintElement) > GetElementInstance() const


description: Override this class to provide anUObjectto jump to in case of double click on node ie. returning a blueprint instance will open the given blueprint in its editor.Bydefault, it will return the underlying class, to try to jump to its header in code

code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetJumpTargetForDoubleClick() const


code: virtual [FLinearColor](API\Runtime\Core\Math\FLinearColor) GetNodeTitleColor() const


description: Return preconfigured info that will be filled in the editor palette action, allowing to create pre-configured settings

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPreConfiguredSettingsInfo](API\Plugins\PCG\FPCGPreConfiguredSettingsInfo) > GetPreconfiguredInfo() const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


description: Derived classes must implement this to communicate dependencies on external actors

code: virtual void GetTrackedActorKeys ( [FPCGActorSelectionKeyToSettingsMap](API\Plugins\PCG\FPCGActorSelectionKeyToSettingsM-) & OutKeysToSettings, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< const [UPCGGraph](API\Plugins\PCG\UPCGGraph) >> & OutVisitedGraphs ) const


description: To be removed when we support automatic override of BP params. For now always return true to force params pin.

code: virtual bool HasOverridableParams() const


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: void OnBlueprintChanged ( [UBlueprint](API\Runtime\Engine\Engine\UBlueprint) * InBlueprint )


code: void OnBlueprintElementChanged ( [UPCGBlueprintElement](API\Plugins\PCG\Elements\UPCGBlueprintElement) * InElement )


description: If there are preconfigured info, we can skip the default settings and only expose pre-configured actions in the editor palette

code: virtual bool OnlyExposePreconfiguredSettings() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: This is called when a property is about to be modified externally

code: virtual void PreEditChange ( [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * PropertyAboutToChange )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category="Settings|Template", Meta=(DeterminesOutputType="InElementType", DynamicOutputParam="ElementInstance")) void SetElementType ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UPCGBlueprintElement](API\Plugins\PCG\Elements\UPCGBlueprintElement) > InElementType, [UPCGBlueprintElement](API\Plugins\PCG\Elements\UPCGBlueprintElement) *& ElementInstance )


className: UPCGBlueprintSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGBlueprintSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

BlueprintElementInstance

type: TObjectPtr<UPC...

BlueprintElementType

type: TSubclassOf<UP...

bTrackActorsOnlyWithinBounds

description: If this is checked, found actors that are outside component bounds will not trigger a refresh.

TrackedActorTags

type: TArray<FName>


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


description: Returns the current pin types, which can either be the static types from the pin properties, or a dynamic type based on connected edges.

code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


description: If the node has any dynamic pins that can change based on input or settings

code: virtual bool HasDynamicPins() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


className: UPCGBooleanSelectSettings

description: Selects data from either input pin, based on a boolean condition.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural), Meta=(Keywords="if bool select")) class UPCGBooleanSelectSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


className: UPCGBoundsModifierSettings

description: This class controls/sets up a node that modifies the min/max bounds of the input points.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGBoundsModifierSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

BoundsMax

type: FVector

Mode

type: EPCGBoundsModif...


className: UPCGBranchSettings

description: Routes input data to one of two outputs,based on a boolean condition.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural), Meta=(Keywords="if bool branch")) class UPCGBranchSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bOutputToB

type: bool


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


description: Puts node title on node body, reducing overall node size

code: virtual bool ShouldDrawNodeCompact() const


className: UPCGCollapseSettings

description: Convert input to point data, performing sampling with default settings if necessary

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGCollapseSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


className: UPCGCopyPointsSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGCopyPointsSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

AttributeInheritance

type: EPCGCopyPointsM...

description: The method used to determine output data attributes

ColorInheritance

type: EPCGCopyPointsI...

description: The method used to determine output point color

RotationInheritance

description: The method used to determine output point rotation

ScaleInheritance

description: The method used to determine output point scale

SeedInheritance

description: The method used to determine output seed values.


code: [FName](API\Runtime\Core\UObject\FName) AdditionalTaskNameInternal ( [FName](API\Runtime\Core\UObject\FName) NodeName ) const


description: Passthrough for the simpler method, to avoid modifying the child settings already overriding this method.

code: virtual bool CanEditChange ( const [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * InProperty ) const


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetOutputAttributeName ( const [FPCGAttributePropertyInputSelector](API\Plugins\PCG\Metadata\FPCGAttributePropertyInputSelect-) * InSource, const [UPCGData](API\Plugins\PCG\UPCGData) * InSourceData ) const


description: Returns true if InPin is in use by node (assuming node enabled). Can be used to communicate when a pin is not in use to user.

code: virtual bool IsPinUsedByNodeExecution ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


code: virtual bool ShouldAddAttributesPin() const


className: UPCGCreateAttributeBaseSettings

description: Note: This need to be updated if we ever add new types.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(Abstract, BlueprintType, ClassGroup=(Procedural)) class UPCGCreateAttributeBaseSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

AttributeTypes

type: FPCGMetadataTyp...

bDisplayFromSourceParamSetting

description: This can be set false by inheriting nodes to hide the 'From Source Param' property.

InputSource

type: FPCGAttributePr...


description: Derived classes can implement this to expose additional name information in the logs

code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetOutputAttributeName ( const [FPCGAttributePropertyInputSelector](API\Plugins\PCG\Metadata\FPCGAttributePropertyInputSelect-) *, const [UPCGData](API\Plugins\PCG\UPCGData) * ) const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


description: If the node has any dynamic pins that can change based on input or settings

code: virtual bool HasDynamicPins() const


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


className: UPCGCreateAttributeSetSettings

description: Creates a new Attribute Set.


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

code: virtual void BeginDestroy()


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: void OnBlueprintChanged ( [UBlueprint](API\Runtime\Engine\Engine\UBlueprint) * Blueprint )


className: UPCGCreateSplineSettings

description: PCG node that creates a spline presentation from the input points data, with optional tangents

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGCreateSplineSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

ArriveTangentAttribute

type: FName

AttachOptions

type: EPCGAttachOptio...

bApplyCustomTangents

description: Allow to specify custom tangents for each point, as an attribute.

bLinear

description: Controls whether the segment between control points is a curve (when false) or a straight line (when true).

Mode

type: EPCGCreateSplin...

TargetActor

type: TSoftObjectPtr<...


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


code: virtual void PostLoad()


description: Called after applying a transaction to the object. Default implementation simply calls PostEditChange.

code: virtual void PostEditUndo()


description: This is called when a property is about to be modified externally

code: virtual void PreEditChange ( [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * PropertyAboutToChange )


description: Called before applying a transaction to the object. Default implementation simply calls PreEditChange.

code: virtual void PreEditUndo()


className: UPCGCreateTargetActor

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGCreateTargetActor : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

ActorLabel

type: FString

ActorPivot

type: FTransform

bAllowTemplateActorEditing

description: TODO: make this InlineEditConditionToggle, not done because property changed event does not propagate correctly so we can't track accurately the need to create the target actor.

TemplateActor

type: TObjectPtr<AAc...

TemplateActorClass

type: TSubclassOf<AA...


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


description: Removes points that lie outside the current actor bounds.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGCullPointsOutsideActorBoundsSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


description: Returns the current pin types, which can either be the static types from the pin properties, or a dynamic type based on connected edges.

code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


description: Override this to filter what kinds of data should be retrieved from the actor(s).

code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetDataFilter() const


description: Override this to change the default value the selector will revert to when changing the actor selection type

code: virtual [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AActor](API\Runtime\Engine\GameFramework\AActor) > GetDefaultActorSelectorClass() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


description: Derived classes must implement this to communicate dependencies on external actors

code: virtual void GetTrackedActorKeys ( [FPCGActorSelectionKeyToSettingsMap](API\Plugins\PCG\FPCGActorSelectionKeyToSettingsM-) & OutKeysToSettings, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< const [UPCGGraph](API\Plugins\PCG\UPCGGraph) >> & OutVisitedGraphs ) const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


code: virtual bool HasDynamicPins() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


className: UPCGDataFromActorSettings

description: Builds a collection of PCG-compatible data from the selected actors.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGDataFromActorSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

ActorSelector

type: FPCGActorSelect...

bDisplayModeSettings

description: This can be set false by inheriting nodes to hide the 'Mode' property.

bTrackActorsOnlyWithinBounds

description: If this is checked, found actors that are outside component bounds will not trigger a refresh.

Mode

type: EPCGGetDataFrom...


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


className: UPCGDataNumSettings

description: Counts number of data in a data collection

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGDataNumSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


description: Derived classes can implement this to expose additional name information in the logs

code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


className: UPCGDataTableRowToParamDataSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGDataTableRowToParamDataSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

DataTable

description: The data table to copy from

PathOverride

description: Path override, hidden to be only presented as param pin.

RowName

description: The name of the row to copy from.


className: UPCGDebugSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGDebugSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


className: UPCGDensityFilterSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGDensityFilterSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

LowerBound

type: float


className: UPCGDensityRemapSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGDensityRemapSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bExcludeValuesOutsideInputRange

description: Density values outside of the input range will be unaffected by the remapping

InRangeMax

description: If InRangeMin = InRangeMax, then that density value is mapped to the average of OutRangeMin and OutRangeMax


description: If settings require structural changes, this will apply them

code: virtual void ApplyStructuralDeprecation ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode )


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


className: UPCGDifferenceSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGDifferenceSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bKeepZeroDensityPoints

description: If enabled, the output will not automatically filter out points with zero density.

DensityFunction

type: EPCGDifferenceD...

description: The density function to use when recalculating the density after the operation.

Mode

type: EPCGDifferenceM...

description: Describes how the difference operation will treat the output data: Continuous - Non-destructive data output will be maintained.


className: UPCGDistanceSettings

description: Calculates the distance between two points (inherently a n*n operation)

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGDistanceSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

AttributeName

description: The name of the attribute to store on the point.Use 'None' to disable

bOutputDistanceVector

type: bool

description: Controls whether the attribute will be a scalar or a vector

bSetDensity

description: If true, will also set the density to be 0 - 1 based on MaximumDistance

MaximumDistance

type: double

description: A maximum distance to search, which is used as an optimization

SourceShape

type: PCGDistanceShap...

description: What shape is used on the 'source' points

TargetShape

description: What shape is used on the 'target' points


description: Returns the current pin types, which can either be the static types from the pin properties, or a dynamic type based on connected edges.

code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


description: If the node has any dynamic pins that can change based on input or settings

code: virtual bool HasDynamicPins() const


className: UPCGFilterByTagSettings

description: Filters a data collection based on some tag criterion

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGFilterByTagSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

Operation

type: EPCGFilterByTag...

SelectedTags

description: Comma-separated list of tags


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


description: Puts node title on node body, reducing overall node size

code: virtual bool ShouldDrawNodeCompact() const


className: UPCGFilterByTypeSettings

description: Filters an input collection based on data type.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGFilterByTypeSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

TargetType

type: EPCGDataType


className: UPCGGatherSettings

description: Used to wrangle multiple input wires into one output wire for organizational purposes.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGGatherSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


description: Derived classes can implement this to expose additional name information in the logs

code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


description: Override this to filter what kinds of data should be retrieved from the actor(s).

code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetDataFilter() const


description: Override this to change the default value the selector will revert to when changing the actor selection type

code: virtual [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AActor](API\Runtime\Engine\GameFramework\AActor) > GetDefaultActorSelectorClass() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


className: UPCGGetLandscapeSettings

description: Builds a collection of landscape data from the selected actors.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGGetLandscapeSettings : public [UPCGDataFromActorSettings](API\Plugins\PCG\Elements\UPCGDataFromActorSettings)


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


className: UPCGGetPrimitiveSettings

description: Builds a collection of primitive data from primitive components on the selected actors.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGGetPrimitiveSettings : public [UPCGDataFromActorSettings](API\Plugins\PCG\Elements\UPCGDataFromActorSettings)


className: UPCGGetSplineSettings

description: Builds a collection of spline data from the selected actors.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGGetSplineSettings : public [UPCGDataFromActorSettings](API\Plugins\PCG\Elements\UPCGDataFromActorSettings)


className: UPCGGetVolumeSettings

description: Builds a collection of volume data from the selected actors.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGGetVolumeSettings : public [UPCGDataFromActorSettings](API\Plugins\PCG\Elements\UPCGDataFromActorSettings)


code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


code: virtual bool HasDynamicPins() const


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: virtual bool IsStructuralProperty ( const [FName](API\Runtime\Core\UObject\FName) & InPropertyName ) const


className: UPCGHiGenGridSizeSettings

description: Set the execution grid size for downstream nodes. Enables executing a single graph across a hierarchy of grids.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGHiGenGridSizeSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

HiGenGridSize

type: EPCGHiGenGrid


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


description: If node disabled, don't intersect - pass through first edge.

code: virtual bool OnlyPassThroughOneEdgeWhenDisabled() const


className: UPCGInnerIntersectionSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGInnerIntersectionSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bKeepZeroDensityPoints

description: [EDITOR ONLY] If enabled, output points with a density value of 0 will NOT be automatically filtered out.

DensityFunction

type: EPCGIntersectio...


className: UPCGLinearDensityRemapSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural), Hidden, Meta=(Deprecated="5.1", DeprecationMessage="Use DensityNoise instead.")) class UPCGLinearDensityRemapSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


description: Returns true if the subgraphs nodes were not inlined into the parent graphs tasks during compilation.

code: virtual bool IsDynamicGraph() const


className: UPCGLoopSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGLoopSettings : public [UPCGSubgraphSettings](API\Plugins\PCG\UPCGSubgraphSettings)

LoopPins

description: Comma-separated list of pin names on which we will loop by-element in a step-wise fashion; if more than one is provided, it is expected that they all have the same number of data.


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


code: virtual bool ShouldDrawNodeCompact() const


className: UPCGMakeConcreteSettings

description: Makes data Concrete, collapsing to Point if necessary. Discards non-Spatial data.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGMakeConcreteSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


className: UPCGMergeSettings

description: Merges multiple data sources (currently only points supported) into a single output.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGMergeSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bMergeMetadata

description: Controls whether the resulting merge data will have any metadata


className: UPCGNormalToDensitySettings

description: Finds the angle against the specified direction and applies that to the density

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGNormalToDensitySettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

DensityMode

type: PCGNormalToDens...

description: The operator to apply to the output density.

Normal

type: FVector

description: The normal to compare against.

Offset

description: This is biases the value towards or against the normal (positive or negative)

Strength

description: This applies a curve to scale the result density with Result = Result^(1/Strength)


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


description: Overridden logic to add a default source pin


className: UPCGNumberOfPointsSettings

description: Used to wrangle multiple input wires into one output wire for organizational purposes.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGNumberOfPointsSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

OutputAttributeName

type: FName


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDynamicInputPinsBaseLabel() const


description: If node disabled, don't intersect - pass through all primary edges.

code: virtual bool OnlyPassThroughOneEdgeWhenDisabled() const


description: If the node has any dynamic pins that can change based on input or settings

code: virtual bool HasDynamicPins() const


description: The input pin properties that are statically defined

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > StaticInputPinProperties() const


className: UPCGOuterIntersectionSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGOuterIntersectionSettings : public [UPCGSettingsWithDynamicInputs](API\Plugins\PCG\UPCGSettingsWithDynamicInputs)

bIgnorePinsWithNoInput

description: If enabled, dynamic input pins that have no incoming data will be bypassed during the intersection operation calculation, which would otherwise result in an empty result.


className: UPCGPointExtentsModifierSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGPointExtentsModifierSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

Mode

type: EPCGPointExtent...


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


className: UPCGPointFilterRangeSettings

description: Point filter on range that allows to do "A op B" type filtering, where A is the input spatial data, and B is either a constant, another spatial data, a param data (in filter) or the input itself. The filtering can be done either on properties or attributes. Some examples (that might not make sense, but are valid):

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGPointFilterRangeSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

MaxThreshold

type: FPCGPointFilter...

MinThreshold

description: Threshold property/attribute/constant related properties

TargetAttribute

type: FPCGAttributePr...

description: Target property/attribute related properties


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


className: UPCGPointFilterSettings

description: Point filter that allows to do "A op B" type filtering, where A is the input spatial data, and B is either a constant, another spatial data, a param data (in filter) or the input itself. The filtering can be done either on properties or attributes. Some examples:

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGPointFilterSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

AttributeTypes

type: FPCGMetadataTyp...

bUseSpatialQuery

description: If the threshold data is Point data, it will sample input points in threshold data.

Operator

type: EPCGPointFilter...


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


className: UPCGPointFromMeshSettings

description: PointFromMesh creates a single point at the origin with an attribute containing a SoftObjectPath to the selectedUStaticMesh.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGPointFromMeshSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

MeshPathAttributeName

description: Name of the string attribute to be created and hold a SoftObjectPath to the StaticMesh

StaticMesh

type: TSoftObjectPtr<...


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


description: Any final migration/recovery that can be done after pins are finalized. This function should also set DataVersion to LatestVersion.

code: virtual void ApplyDeprecation ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode )


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Recreates the match & set instance stored in this settings object if needed.

code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=Settings) void SetMatchAndSetType ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UPCGMatchAndSetBase](API\Plugins\PCG\MatchAndSet\UPCGMatchAndSetBase) > InMatchAndSetType )


code: UPCGPointMatchAndSetSettings ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UPCGPointMatchAndSetSettings

description: This settings class is used to create a PCG node that will apply a "Match and Set" operation on the point data it consumes as input. E.g. for a given point, if it matches with something in the Match & Set object, it will set a value on the point.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGPointMatchAndSetSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

MatchAndSetInstance

type: TObjectPtr<UPC...

description: Instance of MatchAndSetType, stores the data that will be used in these settings.

MatchAndSetType

type: TSubclassOf<UP...

description: Defines the type of Match & Set object to use.

SetTarget

description: "Set" part of the Match & Set - defines what will be changed in the operation

SetTargetStringMode

type: EPCGMetadataTyp...

description: For string types, the subtype is used to cleanup the UI.

SetTargetType

description: If the "Set" part is an attribute, then the type must be provided


className: UPCGProjectionSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGProjectionSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bKeepZeroDensityPoints

type: bool

ProjectionParams

type: FPCGProjectionP...


description: Derived classes can implement this to expose additional name information in the logs

code: virtual [FName](API\Runtime\Core\UObject\FName) AdditionalTaskName() const


description: Derived classes must implement this to communicate dependencies on external actors

code: virtual void GetTrackedActorKeys ( [FPCGActorSelectionKeyToSettingsMap](API\Plugins\PCG\FPCGActorSelectionKeyToSettingsM-) & OutKeysToSettings, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< const [UPCGGraph](API\Plugins\PCG\UPCGGraph) >> & OutVisitedGraphs ) const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: Returns the current pin types, which can either be the static types from the pin properties, or a dynamic type based on connected edges.

code: virtual [EPCGDataType](API\Plugins\PCG\EPCGDataType) GetCurrentPinTypes ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


description: If the node has any dynamic pins that can change based on input or settings

code: virtual bool HasDynamicPins() const


className: UPCGPropertyToParamDataSettings

description: Extract a property value from an actor/component into a ParamData.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGPropertyToParamDataSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

ActorSelector

type: FPCGActorSelect...

bAlwaysRequeryActors

description: If this is true, we will never put this element in cache, and will always try to re-query the actors and read the latest properties from them.

bExtractObjectAndStruct

description: If the property is a struct/object unsupported by metadata, this option can be toggled to extract all (compatible) properties contained in this property.

bSelectComponent

description: Allow to look for an actor component instead of an actor.

bTrackActorsOnlyWithinBounds

description: If this is checked, found actors that are outside component bounds will not trigger a refresh.

ComponentClass

type: TSubclassOf<UA...

description: If we are looking for an actor component, the class can be specified here.

OutputAttributeName

description: Bydefault, attribute name will be None, but it can be overridden by this name.

PropertyName

description: Property name to extract. Can only extract properties that are compatible with metadata types.


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


className: UPCGRerouteSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGRerouteSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


className: UPCGSanityCheckPointDataSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGSanityCheckPointDataSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


className: UPCGSelectPointsSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGSelectPointsSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

Ratio

type: float


className: UPCGSelfPruningSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGSelfPruningSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

PruningType

type: EPCGSelfPruning...


className: UPCGSpatialNoiseSettings

description: Various fractal noises that can be used to filter points

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGSpatialNoiseSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bTiling

description: If true, will generate results that tile along the bounding box size of the

bVoronoiOrientSamplesToCellEdge

description: If true it will orient the output points to point towards the cell edges, which can be used for effects.

EdgeBlendCurveIntensity

description: Will makes the falloff harsher or softer

EdgeBlendCurveOffset

description: Adjust the center point of the curve (where x = curve(x) crosses over)

type: PCGSpatialNoise...

Iterations

description: This is how many times the fractal method recurses. A higher number will mean more detail

Mode

description: The noise method used.

RandomOffset

type: FVector

description: Adds a random amount of offset up to this amount.

TiledVoronoiEdgeBlendCellCount

description: How many cells around the edge will tile

TiledVoronoiResolution

description: The cell resolution of the tiled voronoi (across the bounds)

Transform

type: FTransform

description: This will apply a transform to the points before calculating noise

ValueTarget

description: The output attribute name to write, if not 'None'.

VoronoiCellIDTarget

description: The output attribute name to write the voronoi cell id, if not 'None'.

VoronoiCellRandomness

type: double

description: The less random this is, the more it returns to being a grid


description: ~BeginUPCGBaseSubgraphNodeinterface

code: virtual [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGGraphInterface](API\Plugins\PCG\UPCGGraphInterface) > GetSubgraphInterface() const


className: UPCGSpawnActorNode

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(ClassGroup=(Procedural)) class UPCGSpawnActorNode : public [UPCGBaseSubgraphNode](API\Plugins\PCG\UPCGBaseSubgraphNode)


description: Called before destroying the object. This is called immediately upon deciding to destroy the object, to allow the object to begin an asynchronous cleanup process.

code: virtual void BeginDestroy()


code: virtual [UPCGNode](API\Plugins\PCG\UPCGNode) * CreateNode() const


code: static [UPCGGraphInterface](API\Plugins\PCG\UPCGGraphInterface) * GetGraphInterfaceFromActorSubclass ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [AActor](API\Runtime\Engine\GameFramework\AActor) > InTemplateActorClass )


code: virtual [UPCGGraphInterface](API\Plugins\PCG\UPCGGraphInterface) * GetSubgraphInterface() const


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


description: When using spawn by attribute, the potential execution of subgraphs will be done in a dynamic manner.

code: virtual bool IsDynamicGraph() const


code: virtual bool IsStructuralProperty ( const [FName](API\Runtime\Core\UObject\FName) & InPropertyName ) const


code: void OnBlueprintChanged ( [UBlueprint](API\Runtime\Engine\Engine\UBlueprint) * Blueprint )


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


description: Called when a property on this object has been modified externally

code: virtual void PostEditChangeProperty ( [FPropertyChangedEvent](API\Runtime\CoreUObject\UObject\FPropertyChangedEvent) & PropertyChangedEvent )


description: Called after applying a transaction to the object. Default implementation simply calls PostEditChange.

code: virtual void PostEditUndo()


description: Do any object-specific cleanup required immediately after loading an object. This is not called for newly-created objects, and by default will always execute on the game thread.

code: virtual void PostLoad()


description: This is called when a property is about to be modified externally

code: virtual void PreEditChange ( [FProperty](API\Runtime\CoreUObject\UObject\FProperty) * PropertyAboutToChange )


description: Called before applying a transaction to the object. Default implementation simply calls PreEditChange.

code: virtual void PreEditUndo()


className: UPCGSpawnActorSettings

description: PCG settings class that allows spawning actors with some options to perform the work more efficiently. Note that depending on the options, any PCG components on the spawned actors can be also generated, which is why this class derives fromUPCGBaseSubgraphSettings- it has similar inner-workings to the subgraph node as far as data passing and dispatch go. Note that at this point in time, results from the underlying graphs being generated is not propagated back as results of this node.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGSpawnActorSettings : public [UPCGBaseSubgraphSettings](API\Plugins\PCG\UPCGBaseSubgraphSettings)

ActorOverrides

type: TArray<FPCGAct...

AttachOptions

type: EPCGAttachOptio...

bInheritActorTags

description: Warning: inheriting parent actor tags work only in non-collapsed actor hierarchies

GenerationTrigger

type: EPCGSpawnActorG...

Option

type: EPCGSpawnActorO...

PostSpawnFunctionNames

type: TArray<FName>

description: Can specify a list of functions from the template class to be called on each actor spawned, in order.

SpawnAttribute

type: FName

TemplateActor

type: TObjectPtr<AAc...

TemplateActorClass

type: TSubclassOf<AA...


description: UpdatePins will kick off invalid edges, so this is useful for moving edges around in case of pin changes.

code: virtual void ApplyDeprecationBeforeUpdatePins ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGPin](API\Plugins\PCG\UPCGPin) >> & InputPins, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGPin](API\Plugins\PCG\UPCGPin) >> & OutputPins )


description: Any final migration/recovery that can be done after pins are finalized. This function should also set DataVersion to LatestVersion.

code: virtual void ApplyDeprecation ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode )


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


description: Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins.

code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


className: UPCGSplineSamplerSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGSplineSamplerSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

SamplerParams

type: FPCGSplineSampl...


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=Settings) void SetInstancePackerType ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UPCGInstanceDataPackerBase](API\Plugins\PCG\InstanceDataPackers\UPCGInstanceDataPackerBase) > InInstancePackerType )


code: [UFUNCTION](Programming/UnrealArchitecture/Reference/Functions)(BlueprintCallable, Category=Settings) void SetMeshSelectorType ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UPCGMeshSelectorBase](API\Plugins\PCG\MeshSelectors\UPCGMeshSelectorBase) > InMeshSelectorType )


code: UPCGStaticMeshSpawnerSettings ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UPCGStaticMeshSpawnerSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGStaticMeshSpawnerSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bApplyMeshBoundsToPoints

type: bool

description: Sets the BoundsMin and BoundsMax attributes of each point to reflect the StaticMesh spawned at its location

InstanceDataPackerParameters

type: TObjectPtr<UPC...

InstanceDataPackerType

type: TSubclassOf<UP...

description: Defines the method of custom data packing for spawned (H)ISMCs

MeshSelectorType

description: Defines the method of mesh selection per input data

OutAttributeName

description: Attribute name to store mesh SoftObjectPaths inside if the output pin is connected.

TargetActor

type: TSoftObjectPtr<...


description: Returns true if InPin is in use by node (assuming node enabled). Can be used to communicate when a pin is not in use to user.

code: virtual bool IsPinUsedByNodeExecution ( const [UPCGPin](API\Plugins\PCG\UPCGPin) * InPin ) const


code: virtual void PostLoad()


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


className: UPCGSurfaceSamplerSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGSurfaceSamplerSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bUnbounded

description: If no Bounding Shape input is provided, the actor bounds are used to limit the sample generation domain.

Looseness

type: float

PointSteepness

description: Each PCG point represents a discretized, volumetric region of world space.


code: virtual InputPinProperties() const


className: UPCGTransformPointsSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGTransformPointsSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

bAbsoluteOffset

description: Set offset in world space

bAbsoluteRotation

description: Set rotation directly instead of additively

bAbsoluteScale

description: Set scale directly instead of multiplicatively

bRecomputeSeed

description: Recompute the seed for each new point using its new location

bUniformScale

description: Scale uniformly on each axis. Uses the X component of ScaleMin and ScaleMax.

OffsetMax

type: FVector

RotationMax

type: FRotator


code: virtual [FPCGElementPtr](API\Plugins\PCG\FPCGElementPtr) CreateElement() const


code: virtual [FName](API\Runtime\Core\UObject\FName) GetDefaultNodeName() const


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetDefaultNodeTitle() const


className: UPCGUnionSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGUnionSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

DensityFunction

type: EPCGUnionDensit...

Type

type: EPCGUnionType


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > InputPinProperties() const


description: Check if we need to hook the output of the pre-task to this. One use is to compute overrides in the subgraph element and pass the overrides as data, to all nodes that needs it.

code: virtual bool ShouldHookToPreTask() const


code: void UpdatePropertyName ( [FName](API\Runtime\Core\UObject\FName) InNewName )


code: UPCGUserParameterGetSettings ( const [FObjectInitializer](API\Runtime\CoreUObject\UObject\FObjectInitializer) & ObjectInitializer )


className: UPCGUserParameterGetSettings

description: Getter for user parameters defined in PCGGraph, by the user. Will pick up the value from the graph instance.

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGUserParameterGetSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

PropertyGuid

type: FGuid


code: virtual void ApplyDeprecationBeforeUpdatePins ( [UPCGNode](API\Plugins\PCG\UPCGNode) * InOutNode, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGPin](API\Plugins\PCG\UPCGPin) >> & InputPins, [TArray](API\Runtime\Core\Containers\TArray)< [TObjectPtr](API\Runtime\Core\Delegates\TObjectPtr)< [UPCGPin](API\Plugins\PCG\UPCGPin) >> & OutputPins )


code: virtual [FText](API\Runtime\Core\Internationalization\FText) GetNodeTooltipText() const


code: virtual [EPCGSettingsType](API\Plugins\PCG\EPCGSettingsType) GetType() const


className: UPCGVolumeSamplerSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGVolumeSamplerSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)


code: virtual [TArray](API\Runtime\Core\Containers\TArray)< [FPCGPinProperties](API\Plugins\PCG\FPCGPinProperties) > OutputPinProperties() const


className: UPCGWorldQuerySettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGWorldQuerySettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

QueryParams

type: FPCGWorldVolume...


className: UPCGWorldRayHitSettings

code: [UCLASS](Programming/UnrealArchitecture/Reference/Classes#classdeclaration)(BlueprintType, ClassGroup=(Procedural)) class UPCGWorldRayHitSettings : public [UPCGSettings](API\Plugins\PCG\UPCGSettings)

type: FPCGWorldRayHit...


className: EPCGAttachOptions

code: enum EPCGAttachOptions { NotAttached, Attached, InFolder, }


className: EPCGChangeType

code: enum EPCGChangeType { None = 0, Cosmetic = 1 << 0, Settings = 1 << 1, Input = 1 << 2, Edge = 1 << 3, Node = 1 << 4, Structural = 1 << 5, }


className: EPCGComponentDirtyFlag

code: enum EPCGComponentDirtyFlag { None = 0, Actor = 1 << 0, Landscape = 1 << 1, Input = 1 << 2, Data = 1 << 3, All = Actor | Landscape | Input | Data, }


className: EPCGComponentGenerationTrigger

code: enum EPCGComponentGenerationTrigger { GenerateOnLoad, GenerateOnDemand, }


className: EPCGComponentInput

code: enum EPCGComponentInput { Actor, Landscape, Other, EPCGComponentInput_MAX, }


className: EPCGDataType

description: Bitmask containing the various data types supported in PCG. Note that this enum cannot be a blueprint type because enums have to be uint8 for blueprint, and we already use more than 8 bits in the bitmask. This is why we have a parallel enum just below that must match on a name basis 1:1 to allow the make/break functions to work properly in blueprint.

code: enum EPCGDataType { None = 0, Point = 1 << 1, Spline = 1 << 2, LandscapeSpline = 1 << 3, PolyLine = Spline | LandscapeSpline, Landscape = 1 << 4, Texture = 1 << 5, RenderTarget = 1 << 6, BaseTexture = Texture | RenderTarget, Surface = Landscape | BaseTexture, Volume = 1 << 7, Primitive = 1 << 8, Concrete = Point | PolyLine | Surface | Volume | Primitive, Composite = 1 << 9, Spatial = Composite | Concrete, Param = 1 << 27, Settings = 1 << 28, Other = 1 << 29, Any = (1 << 30) - 1, }


className: EPCGDebugVisScaleMethod

code: enum EPCGDebugVisScaleMethod { Relative, Absolute, Extents, }


code: namespace EPCGElementLogMode { enum Type { LogOnly = 0, GraphAndLog, NumLogModes, LogModeMask = 0xff, } }


className: EPCGExclusiveDataType

description: As discussed just before, a parallel version for "exclusive" (as in only type) of the EPCGDataType enum. Needed for blueprint compatibility.

code: enum EPCGExclusiveDataType { None = 0, Point, Spline, LandscapeSpline, PolyLine, Landscape, Texture, RenderTarget, BaseTexture, Surface, Volume, Primitive, Concrete, Composite, Spatial, Param, Settings, Other, Any, }


className: EPCGExecutionPhase

code: enum EPCGExecutionPhase { NotExecuted = 0, PrepareData, Execute, PostExecute, Done, }


className: EPCGGraphParameterEvent

code: enum EPCGGraphParameterEvent { GraphChanged, GraphPostLoad, Added, Removed, PropertyModified, ValueModifiedLocally, ValueModifiedByParent, }


className: EPCGHiGenGrid

description: Describes one or more target execution grids.

code: enum EPCGHiGenGrid { Uninitialized = 0, Grid32 = 32, Grid64 = 64, Grid128 = 128, Grid256 = 256, Grid512 = 512, Grid1024 = 1024, Grid2048 = 2048, GridMin = Grid32, GridMax = Grid2048, Unbounded = 2 * GridMax, GenerationDefault = 2 * Unbounded, }


className: EPCGPointProperties

code: enum EPCGPointProperties { Density, BoundsMin, BoundsMax, Extents, Color, Position, Rotation, Scale, Transform, Steepness, LocalCenter, Seed, }


className: EPCGSettingsExecutionMode

code: enum EPCGSettingsExecutionMode { Enabled, Debug, Isolated, Disabled, }


className: EPCGSettingsType

code: enum EPCGSettingsType { InputOutput, Spatial, Density, Blueprint, Metadata, Filter, Sampler, Spawner, Subgraph, Debug, Generic, Param, HierarchicalGeneration, ControlFlow, }


className: FOnPCGGraphChanged

code: typedef TMulticastDelegate_TwoParams< void, [UPCGGraphInterface](API\Plugins\PCG\UPCGGraphInterface) *, [EPCGChangeType](API\Plugins\PCG\EPCGChangeType) > FOnPCGGraphChanged


className: EPCGTypeConversion

code: enum EPCGTypeConversion { NoConversionRequired, CollapseToPoint, Filter, MakeConcrete, Failed, }


className: FOnPCGGraphCleaned

code: typedef TMulticastDelegate_OneParam< void, [UPCGComponent](API\Plugins\PCG\UPCGComponent) * > FOnPCGGraphCleaned


className: FOnPCGGraphDynamicallyExecuted

code: typedef TMulticastDelegate_ThreeParams< void, [UPCGGraphInterface](API\Plugins\PCG\UPCGGraphInterface) *, const [TWeakObjectPtr](API\Runtime\Core\UObject\TWeakObjectPtr)< [UPCGComponent](API\Plugins\PCG\UPCGComponent) >, [FPCGStack](API\Plugins\PCG\Graph\FPCGStack) > FOnPCGGraphDynamicallyExecuted


className: FOnPCGGraphGenerated

code: typedef TMulticastDelegate_OneParam< void, [UPCGComponent](API\Plugins\PCG\UPCGComponent) * > FOnPCGGraphGenerated


className: FOnPCGGraphGridSizesChanged

code: typedef TMulticastDelegate_OneParam< void, [UPCGGraphInterface](API\Plugins\PCG\UPCGGraphInterface) * > FOnPCGGraphGridSizesChanged


className: FOnPCGGraphParametersChanged

code: typedef TMulticastDelegate_ThreeParams< void, [UPCGGraphInterface](API\Plugins\PCG\UPCGGraphInterface) *, [EPCGGraphParameterEvent](API\Plugins\PCG\EPCGGraphParameterEvent), [FName](API\Runtime\Core\UObject\FName) > FOnPCGGraphParametersChanged


className: FOnPCGNodeChanged

code: typedef TMulticastDelegate_TwoParams< void, [UPCGNode](API\Plugins\PCG\UPCGNode) *, [EPCGChangeType](API\Plugins\PCG\EPCGChangeType) > FOnPCGNodeChanged


className: FOnPCGSettingsChanged

code: typedef TMulticastDelegate_TwoParams< void, [UPCGSettings](API\Plugins\PCG\UPCGSettings) *, [EPCGChangeType](API\Plugins\PCG\EPCGChangeType) > FOnPCGSettingsChanged


code: virtual void AddReferencedObjects ( [FReferenceCollector](API\Runtime\CoreUObject\UObject\FReferenceCollector) & Collector )


description: Applies this component instance data to the supplied component

code: virtual void ApplyToComponent ( [UActorComponent](API\Runtime\Engine\Components\UActorComponent) * Component, const ECacheApplyPhase CacheApplyPhase )


code: FPCGComponentInstanceData ( const [UPCGComponent](API\Plugins\PCG\UPCGComponent) * InSourceComponent )


description: Determines if any instance data was actually saved.

code: virtual bool ContainsData() const


className: FPCGComponentInstanceData

description: Used to store generated resources data during RerunConstructionScripts

code: struct FPCGComponentInstanceData : public [FActorComponentInstanceData](API\Runtime\Engine\FActorComponentInstanceData)

GeneratedResources

type: TArray<TObject...

SourceComponent

type: TObjectPtr< con...


code: virtual [UObject](API\Runtime\CoreUObject\UObject\UObject) * GetExternalContainerForOverridableParam ( const [FPCGSettingsOverridableParam](API\Plugins\PCG\FPCGSettingsOverridableParam) & InParam )


description: Return the settings casted in the wanted type. If there is any override, those settings will already contains all the overriden values.

code: template<typename SettingsType> const SettingsType * GetInputSettings() const


code: const [UPCGSettingsInterface](API\Plugins\PCG\UPCGSettingsInterface) * GetInputSettingsInterface() const


description: Return the seed, possibly overriden by params, and combined with the source component (if any).

code: int GetSeed() const


code: [AActor](API\Runtime\Engine\GameFramework\AActor) * GetTargetActor ( const [UPCGSpatialData](API\Plugins\PCG\Data\UPCGSpatialData) * InSpatialData ) const


code: virtual void * GetUnsafeExternalContainerForOverridableParam ( const [FPCGSettingsOverridableParam](API\Plugins\PCG\FPCGSettingsOverridableParam) & InParam )


description: True if any issues were logged during last execution.

code: bool HasVisualLogs() const


description: Returns true if the given property has been overriden.

code: bool IsValueOverriden ( const [FName](API\Runtime\Core\UObject\FName) PropertyName )


description: After initializing the context, we can call this method to prepare for parameter override It will create a copy of the original settings if there is indeed a possible override.

code: void InitializeSettings()


description: Log warnings and errors to be displayed on node in graph editor.

code: void LogVisual ( [ELogVerbosity::Type](API\Runtime\Core\Logging\ELogVerbosity__Type) InVerbosity, const [FText](API\Runtime\Core\Internationalization\FText) & InMessage ) const


description: If we any any parameter override, it will read from the params and override matching values in the settings copy.

code: void OverrideSettings()


description: Combines another Crc into this Crc to chain them.

code: void Combine ( const [FPCGCrc](API\Plugins\PCG\FPCGCrc) & InOtherCrc )


description: Combines another Crc value into this Crc to chain them.

code: void Combine ( uint32 InOtherCrcValue )


description: Compares Crc. This and other Crc must be valid.

code: bool operator== ( const [FPCGCrc](API\Plugins\PCG\FPCGCrc) & InOtherCrc ) const


description: Creates an invalid Crc.

code: FPCGCrc()


description: Initializes a valid Crc set to InValue.

code: FPCGCrc ( uint32 InValue )