Navigation
API > API/Plugins > API/Plugins/TextureGraph
| Name | UTG_Expression |
| Type | class |
| Header File | /Engine/Plugins/TextureGraph/Source/TextureGraph/Public/Expressions/TG_Expression.h |
| Include Path | #include "Expressions/TG_Expression.h" |
Syntax
UCLASS (Abstract)
class UTG_Expression : public UObject
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UTG_Expression
Derived Classes
UTG_Expression derived class hierarchy
- UTG_Expression_Array4
- UTG_Expression_ArrayConcat
- UTG_Expression_ArrayGrid
- UTG_Expression_ArraySplit
- UTG_Expression_Blend
- UTG_Expression_Blur
- UTG_Expression_Brightness
- UTG_Expression_ChannelCombiner
- UTG_Expression_ChannelSplitter
- UTG_Expression_ChannelSwizzle
- UTG_Expression_ColorCorrection
- UTG_Expression_EdgeDetect
- UTG_Expression_ErodeDilate
- UTG_Expression_Gradient
- UTG_Expression_Graph
- UTG_Expression_Grayscale
- UTG_Expression_HistogramRange
- UTG_Expression_HistogramScan
- UTG_Expression_InputParam
- UTG_Expression_Invert
- UTG_Expression_Levels
- UTG_Expression_MaterialBase
- UTG_Expression_MaterialID
- UTG_Expression_Noise
- UTG_Expression_NormalFromHeightMap
- UTG_Expression_Null
- UTG_Expression_Output
- UTG_Expression_OutputSettings
- UTG_Expression_Pattern
- UTG_Expression_Premult
- UTG_Expression_Shape
- UTG_Expression_Threshold
- UTG_Expression_Transform
- UTG_Expression_Utils_MakeVector4
- UTG_Expression_Utils_Resize
- UTG_Expression_Variant
- UTG_Expression_Warp
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| BaseOutputSettings | FTG_TextureDescriptor | When we will work on Node UI for FOutputSettings we will set the category as TG_Setting. | Expressions/TG_Expression.h |
|
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool CanHandleAsset
(
UObject* Asset |
Expressions/TG_Expression.h | ||
virtual bool CanRenameTitle() |
Expressions/TG_Expression.h | ||
virtual void Evaluate
(
FTG_EvaluationContext* InContext |
This is THE evaluation call to overwrite. | Expressions/TG_Expression.h | |
virtual FName GetCategory() |
Expressions/TG_Expression.h | ||
virtual FTG_Name GetDefaultName() |
Expressions/TG_Expression.h | ||
virtual UTG_Node * GetParentNode() |
Expression notifies its parent node on key events. | Expressions/TG_Expression.h | |
virtual FTG_SignaturePtr GetSignature() |
Expressions/TG_Expression.h | ||
virtual FName GetTitleName() |
Expressions/TG_Expression.h | ||
virtual FText GetTooltipText() |
Expressions/TG_Expression.h | ||
virtual void NotifyExpressionChanged
(
const FPropertyChangedEvent& PropertyChangedEvent |
If some state has changed in the expression that affects its representation triggered when a property has changed and needs to be copied over to its corresponding Var NB: required to be public for calling from TG_Variant customization | Expressions/TG_Expression.h | |
void PropertyChangeTriggered
(
FProperty* Property, |
Expressions/TG_Expression.h | ||
virtual void SetAsset
(
UObject* Asset |
Expressions/TG_Expression.h | ||
virtual void SetTitleName
(
FName NewName |
Expressions/TG_Expression.h | ||
virtual bool Validate
(
MixUpdateCyclePtr Cycle |
Validate internal checks, warnings and errors. | Expressions/TG_Expression.h | |
void ValidateGenerateConformer
(
UTG_Pin* InPin |
Validate that the expression conforms to a conformant function (e.g. Clamp etc.) | Expressions/TG_Expression.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool CanEditChange
(
const FProperty* InProperty |
Expressions/TG_Expression.h | ||
virtual void Serialize
(
FArchive& Ar |
Override serialization to save Class Serialization version. | Expressions/TG_Expression.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual FTG_SignaturePtr BuildSignatureDynamically() |
Build Signature in derived classes dynamically. | Expressions/TG_Expression.h | |
virtual FTG_SignaturePtr BuildSignatureFromClass() |
Build the signature of the expression by collecting the FTG_ExpressionXXX UProperties of the class. | Expressions/TG_Expression.h | |
virtual void CopyVarFromExpressionArgument
(
const FTG_Argument& Arg, |
Expressions/TG_Expression.h | ||
virtual void CopyVarGeneric
(
const FTG_Argument& Arg, |
Expressions/TG_Expression.h | ||
virtual void CopyVarToExpressionArgument
(
const FTG_Argument& Arg, |
Expressions/TG_Expression.h | ||
virtual FTG_Variant::EType EvalExpressionCommonInputVariantType() |
Variant expression API: Eval the common input variant type used by the expression (only if it is variant) by looking at the various input pins connected or default types and come up with a "common input" type used for how to interpret all the input variants Default implementation: The common variant type is found as the type that superseeds all the variant input arguments currently fed from other nodes This call can be modified in a specific class to get a different behavior. | Expressions/TG_Expression.h | |
| Variant expression API: Similarly, this call eval the common output variant type used by the expression (only if it is variant) Default implementation: the common output variant is the same as the common input variant. | Expressions/TG_Expression.h | ||
bool FeedbackPinValue
(
const FName& InPinName, |
In some cases, evaluation or change in the Expression needs to be feedback to the matching pin's value This is not needed for the standard flow of evaluation but is sometime required for coupled member. | Expressions/TG_Expression.h | |
virtual FTG_Variant::EType GetCommonInputVariantType() |
Expressions/TG_Expression.h | ||
virtual int32 GetExpressionClassVersion() |
Method returning this Expression class version that can be overwritten in a sub class requiring to support version change | Expressions/TG_Expression.h | |
virtual FTG_Signature::FInit GetSignatureInitArgsFromClass() |
Expressions/TG_Expression.h | ||
virtual bool IgnoreInputTextureOnUndo() |
Expressions/TG_Expression.h | ||
virtual void Initialize() |
Initialize the expression in cascade from the node allowing it to re create transient data This is called in the PostLoad of the Graph | Expressions/TG_Expression.h | |
virtual void LogEvaluation
(
FTG_EvaluationContext* InContext |
Log the actual values for vars and the expression evaluation Called from SetupAndEvaluate call if Context ask for it | Expressions/TG_Expression.h | |
virtual void NotifyCommonInputVariantTypeChanged
(
FTG_Variant::EType NewType |
Expressions/TG_Expression.h | ||
virtual void NotifySignatureChanged () |
If the signature changes and the node need to regenerate its own signature. | Expressions/TG_Expression.h | |
virtual bool ResetCommonInputVariantType
(
FTG_Variant::EType InType |
Variant expression API: specialized when using the macro TG_DECLARE_VARIANT_EXPRESSION: When input connection are changing, the graph / node calls ResetCommonInputVariantType in order for the expression to reeval its CommonInputVariant type as well as it s signature if it changes | Expressions/TG_Expression.h | |
virtual void SetupAndEvaluate
(
FTG_EvaluationContext* InContext |
Called first from the Graph::Evaluate/Traverse which then call the Evaluate function. | Expressions/TG_Expression.h | |
virtual bool ShouldShowSettings() |
Expressions/TG_Expression.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Expressions/TG_Expression.h | ||
virtual void PostEditUndo() |
Expressions/TG_Expression.h |