Navigation
API > API/Plugins > API/Plugins/PCG
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UPCGData
- UPCGSettingsInterface
- UPCGSettings
- UPCGAttributeFilterSettings
- UPCGAttributeGetFromPointIndexSettings
- UPCGAttributeNoiseSettings
- UPCGAttributeReduceSettings
- UPCGAttributeSelectSettings
- UPCGAttributeTransferSettings
- UPCGBaseSubgraphSettings
- UPCGSpawnActorSettings
- UPCGSubgraphSettings
- UPCGLoopSettings
- UPCGBlueprintSettings
- UPCGBooleanSelectSettings
- UPCGBoundsModifierSettings
- UPCGBranchSettings
- UPCGCollapseSettings
- UPCGCopyPointsSettings
- UPCGCreateAttributeBaseSettings
- UPCGAddAttributeSettings
- UPCGCreateAttributeSetSettings
- UPCGCreateSplineSettings
- UPCGCreateTargetActor
- UPCGCullPointsOutsideActorBoundsSettings
- UPCGDataFromActorSettings
- UPCGGetLandscapeSettings
- UPCGGetPrimitiveSettings
- UPCGGetSplineSettings
- UPCGGetVolumeSettings
- UPCGDataNumSettings
- UPCGDataTableRowToParamDataSettings
- UPCGDebugSettings
- UPCGDensityFilterSettings
- UPCGDensityRemapSettings
- UPCGDifferenceSettings
- UPCGDistanceSettings
- UPCGExternalDataSettings
- UPCGLoadAlembicSettings
- UPCGLoadDataTableSettings
- UPCGFilterByTagSettings
- UPCGFilterByTypeSettings
- UPCGGatherSettings
- UPCGGraphInputOutputSettings
- UPCGHiGenGridSizeSettings
- UPCGInnerIntersectionSettings
- UPCGLinearDensityRemapSettings
- UPCGMakeConcreteSettings
- UPCGMergeSettings
- UPCGMeshSamplerSettings
- UPCGMetadataOperationSettings
- UPCGMetadataPartitionSettings
- UPCGMetadataRenameSettings
- UPCGMetadataSettingsBase
- UPCGMetadataBitwiseSettings
- UPCGMetadataBooleanSettings
- UPCGMetadataBreakTransformSettings
- UPCGMetadataBreakVectorSettings
- UPCGMetadataCompareSettings
- UPCGMetadataMakeRotatorSettings
- UPCGMetadataMakeTransformSettings
- UPCGMetadataMakeVectorSettings
- UPCGMetadataMathsSettings
- UPCGMetadataRotatorSettings
- UPCGMetadataStringOpSettings
- UPCGMetadataTransformSettings
- UPCGMetadataTrigSettings
- UPCGMetadataVectorSettings
- UPCGNormalToDensitySettings
- UPCGNumberOfPointsSettings
- UPCGPointExtentsModifierSettings
- UPCGPointFilterRangeSettings
- UPCGPointFilterSettings
- UPCGPointFromMeshSettings
- UPCGPointMatchAndSetSettings
- UPCGProjectionSettings
- UPCGPropertyToParamDataSettings
- UPCGRerouteSettings
- UPCGSanityCheckPointDataSettings
- UPCGSelectPointsSettings
- UPCGSelfPruningSettings
- UPCGSettingsWithDynamicInputs
- UPCGOuterIntersectionSettings
- UPCGSpatialNoiseSettings
- UPCGSplineSamplerSettings
- UPCGStaticMeshSpawnerSettings
- UPCGSurfaceSamplerSettings
- UPCGTextureSamplerSettings
- UPCGTransformPointsSettings
- UPCGTrivialSettings
- UPCGUnionSettings
- UPCGUserParameterGetSettings
- UPCGVolumeSamplerSettings
- UPCGWorldQuerySettings
- UPCGWorldRayHitSettings
References
| Module | PCG |
| Header | /Engine/Plugins/Experimental/PCG/Source/PCG/Public/PCGSettings.h |
| Include | #include "PCGSettings.h" |
Syntax
UCLASS&40;Abstract, BlueprintType, ClassGroup&61;&40;Procedural&41;&41;
class UPCGSettings : public UPCGSettingsInterface
Remarks
Base class for settings-as-data in the PCG framework
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bExposeToLibrary | ||
| bool | bPassThroughFilteredOutInputs | Warning - this is deprecated and will be removed soon since we have a Filter By Tag node for this specific purpose | |
| bool | bUseSeed | By default, settings won't use a seed. Set this bool to true in the child ctor to allow edition and use it. | |
| TArray< FPCGSettingsOverridableParam > | CachedOverridableParams | Needs to be serialized since property metadata (used to populate this array) is not available at runtime. | |
| FText | Category | ||
| int32 | DataVersion | The version number of the data after load and after any data migration. | |
| FText | Description | ||
| FPCGDeterminismSettings | DeterminismSettings | ||
| TSet< FString > | FilterOnTags | Warning - this is deprecated and will be removed soon since we have a Filter By Tag node for this specific purpose | |
| const UPCGSettings * | OriginalSettings | Holds the original settings used to duplicate this object if it was overridden. | |
| int | Seed | ||
| TSet< FString > | TagsAppliedOnOutput | Applies the specified tags on the output data. | |
| int32 | UserDataVersion | If a custom version guid was provided through GetUserCustomVersionGuid(), this field will hold the version number after load and after any data migration. |
Functions
| Type | Name | Description | |
|---|---|---|---|
| FName | Derived classes can implement this to expose additional name information in the logs | ||
| TArray< FPCGPinProperties > | Return the concatenation of InputPinProperties and FillOverridableParamsPins | ||
| TArray< FPCGPinProperties > | For symmetry reason, do the same with output pins. | ||
| void | ApplyDeprecation
(
UPCGNode* InOutNode |
Any final migration/recovery that can be done after pins are finalized. | |
| void | ApplyDeprecationBeforeUpdatePins
(
UPCGNode* InOutNode, |
UpdatePins will kick off invalid edges, so this is useful for moving edges around in case of pin changes. | |
| void | ApplyPreconfiguredSettings
(
const FPCGPreConfiguredSettingsInfo& PreconfigureInfo |
||
| void | ApplyStructuralDeprecation
(
UPCGNode* InOutNode |
If settings require structural changes, this will apply them | |
| FPCGElementPtr | |||
| UPCGNode * | CreateNode () |
||
| TArray< FPCGPinProperties > | Internal functions, should not be used by any user. | ||
| TArray< FPCGPinProperties > | |||
| TArray< FPCGPinProperties > | Methods to remove boilerplate code across settings | ||
| TArray< FPCGPinProperties > | |||
| void |
DirtyCache ()
|
Method that can be called to dirty the cache data from this settings objects if the operator== does not allow to detect changes | |
| void | FillOverridableParamsPins
(
TArray< FPCGPinProperties >& OutPins |
Iterate over OverridableParams to automatically add param pins to the list. | |
| void | There is a weird issue where the BP class is not set correctly in some Server cases. | ||
| TArray< FPCGSettingsOverridableParam > | Can be overridden to add more custom params (like in BP). | ||
| const FPCGCrc & | GetCachedCrc () |
Get the Crc value precomputed for these settings. | |
| EPCGDataType | GetCurrentPinTypes
(
const UPCGPin* InPin |
Returns the current pin types, which can either be the static types from the pin properties, or a dynamic type based on connected edges. | |
| FName | |||
| FText | |||
| FPCGElementPtr | GetElement () |
TODO: check if we need this to be virtual, we don't really need if we're always caching. | |
| UObject * | Override this class to provide an UObject to jump to in case of double click on node ie. returning a blueprint instance will open the given blueprint in its editor. | ||
| FLinearColor | |||
| FText | |||
| bool | GetPinExtraIcon
(
const UPCGPin* InPin, |
Can override to add a custom icon next to the pin label (and an optional tooltip). | |
| bool | GetPinLabelStyle
(
const UPCGPin* InPin, |
Can override the label style for a pin. Return false if no override is available. | |
| TArray< FPCGPreConfiguredSettingsInfo > | Return preconfigured info that will be filled in the editor palette action, allowing to create pre-configured settings | ||
| int | GetSeed
(
const UPCGComponent* InSourceComponent |
Get the seed, combined with optional PCGComponent seed. | |
| void | GetTrackedActorKeys
(
FPCGActorSelectionKeyToSettingsMap& OutKeysToSettings, |
Derived classes must implement this to communicate dependencies on external actors | |
| EPCGSettingsType | GetType () |
||
| uint32 | Can be overriden by child class if they ever got renamed to avoid changing the default seed for this one. | ||
| EPCGDataType | GetTypeUnionOfIncidentEdges
(
const FName& PinLabel |
Bitwise union of the allowed types of each incident edge on pin. | |
| FGuid | An additional custom version number that external system users can use to track versions. | ||
| bool | If the node has any dynamic pins that can change based on input or settings | ||
| bool | Check if we have some override. Can be overriden to force params pin for example | ||
| void | InitializeCachedOverridableParams
(
bool bReset |
Called after intialization to construct the list of all overridable params. | |
| TArray< FPCGPinProperties > | Returns an array of all the input pin properties. You should not add manually a "params" pin, it is handled automatically by FillOverridableParamsPins. | ||
| bool | IsPinUsedByNodeExecution
(
const UPCGPin* InPin |
Returns true if InPin is in use by node (assuming node enabled). | |
| bool | IsPropertyOverriddenByPin
(
const FProperty* InProperty |
||
| bool | IsStructuralProperty
(
const FName& InPropertyName |
||
| bool | If there are preconfigured info, we can skip the default settings and only expose pre-configured actions in the editor palette | ||
| bool | Returns true if only the first input edge is used from the primary pin when the node is disabled. | ||
| TArray< FPCGPinProperties > | |||
| const TArray< FPCGSettingsOverridableParam > & | Overridable param section. | ||
| bool | Puts node title on node body, reducing overall node size | ||
| bool | Check if we need to hook the output of the pre-task to this. | ||
| bool | UseSeed () |
Overridden from UPCGSettingsInterface
| Type | Name | Description | |
|---|---|---|---|
| const UPCGSettings * | GetSettings () |
||
| UPCGSettings * | GetSettings () |
Overridden from UPCGData
| Type | Name | Description | |
|---|---|---|---|
| EPCGDataType | GetDataType () |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| bool | CanEditChange
(
const FProperty* InProperty |
Passthrough for the simpler method, to avoid modifying the child settings already overriding this method. | |
| bool | CanEditChange
(
const FEditPropertyChain& InPropertyChain |
We need the more complex function (with PropertyChain) to detect child properties in structs, if they are overridable. | |
| void | PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Called when a property on this object has been modified externally | |
| void | PostEditUndo () |
Called after applying a transaction to the object. | |
| void | Called after the C++ constructor and after the properties have been initialized, including those loaded from config. | ||
| void | PostLoad () |
Do any object-specific cleanup required immediately after loading an object. | |
| void | PostSaveRoot
(
FObjectPostSaveRootContext ObjectSaveContext |
Called from within SavePackage on the passed in base/root object. | |
| void | Handles reading, writing, and reference collecting using FArchive. |
Operators
| Type | Name | Description | |
|---|---|---|---|
| bool | operator==
(
const UPCGSettings& Other |
Deprecated Variables
| Type | Name | Description | |
|---|---|---|---|
| EPCGSettingsExecutionMode | ExecutionMode_DEPRECATED |