description:
Singleton-like access to this module's interface. This is just for convenience! Beware of calling this during the shutdown phase, though. Your module might have been unloaded already.
Returns singleton instance, loading the module on demand if needed

module: GeometryCollectionTracks

code: static [FGeometryCollectionTracksModule](API\Plugins\GeometryCollectionTracks\FGeometryCollectionTracksModule) & Get()


description:
Checks to see if this module is loaded and ready. It is only valid to callGet()ifIsAvailable()returns true.
True if the module is loaded and ready to use

code: static bool IsAvailable()


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

code: virtual void ShutdownModule()


code: FGeometryCollectionTracksModule()


description: FModuleManager::Get().LoadModuleChecked(TEXT("HTTP"));

code: virtual void StartupModule()


className: FGeometryCollectionTracksModule

description: The public interface to this module

code: class FGeometryCollectionTracksModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


code: float MapTimeToAnimation ( [FFrameTime](API\Runtime\Core\Misc\FFrameTime) InPosition, [FFrameRate](API\Runtime\Core\Misc\FFrameRate) InFrameRate ) const


code: FMovieSceneGeometryCollectionSectionTemplateParameters ( const [FMovieSceneGeometryCollectionParams](API\Plugins\GeometryCollectionTracks\FMovieSceneGeometryCollectionPar-) & BaseParams, [FFrameNumber](API\Runtime\Core\Misc\FFrameNumber) InSectionStartTime, [FFrameNumber](API\Runtime\Core\Misc\FFrameNumber) InSectionEndTime )


SectionEndTime

type: FFrameNumber


description: Gets the animation duration, modified by play rate

code: float GetDuration() const


description: Gets the animation sequence length, not modified by play rate

code: float GetSequenceLength() const


code: FMovieSceneGeometryCollectionParams()


description: Only called when the containing template has an evaluation method of EEvaluationMethod::Static This function should perform any expensive or costly evaluation logic required to calculate the final animated state. Potentially called on a thread, and as such has no access to the current evaluation environment.

code: virtual void Evaluate ( const [FMovieSceneEvaluationOperand](API\Runtime\MovieScene\Evaluation\FMovieSceneEvaluationOperand) & Operand, const [FMovieSceneContext](API\Runtime\MovieScene\Evaluation\FMovieSceneContext) & Context, const [FPersistentEvaluationData](API\Runtime\MovieScene\Evaluation\FPersistentEvaluationData) & PersistentData, [FMovieSceneExecutionTokens](API\Runtime\MovieScene\Evaluation\FMovieSceneExecutionTokens) & ExecutionTokens ) const


className: FMovieSceneGeometryCollectionParams

EndFrameOffset

description: The offset into the end of the animation clip

GeometryCollectionCache

type: FSoftObjectPath

description: The animation this section plays

PlayRate

type: float

description: The playback rate of the animation clip

StartFrameOffset

description: The offset into the beginning of the animation clip


description: Retrieve the script struct pertaining to the most-derived type of this instance. Must be implemented in all derived classes for serialization to work correctly.

code: virtual [UScriptStruct](API\Runtime\CoreUObject\UObject\UScriptStruct) & GetScriptStructImpl() const


code: FMovieSceneGeometryCollectionSectionTemplate ( const [UMovieSceneGeometryCollectionSection](API\Plugins\GeometryCollectionTracks\UMovieSceneGeometryCollectionSec-) & Section )


Params

type: FMovieSceneGeom...


description:
Returns the range to auto size this section to, if there is one. This defaults to the range of all the keys.
the range of this section to auto size to

code: virtual [TOptional](API\Runtime\Core\IO\TOptional)< [TRange](API\Runtime\Core\Math\TRange)< [FFrameNumber](API\Runtime\Core\Misc\FFrameNumber) > > GetAutoSizeRange() const


description: Gets all snap times for this section

code: virtual void GetSnapTimes ( [TArray](API\Runtime\Core\Containers\TArray)< [FFrameNumber](API\Runtime\Core\Misc\FFrameNumber) > & OutSnapTimes, bool bGetSectionBorders ) const


description: Get Frame Time as Animation Time

code: virtual float MapTimeToAnimation ( [FFrameTime](API\Runtime\Core\Misc\FFrameTime) InPosition, [FFrameRate](API\Runtime\Core\Misc\FFrameRate) InFrameRate ) const


description: Migrate the frame times of the movie scene section from the source frame rate to the destination frame rate

code: virtual void MigrateFrameTimes ( [FFrameRate](API\Runtime\Core\Misc\FFrameRate) SourceRate, [FFrameRate](API\Runtime\Core\Misc\FFrameRate) DestinationRate )


description:
Split a section in two at the split time
The newly created split section

code: virtual [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) * SplitSection ( [FQualifiedFrameTime](API\Runtime\Core\Misc\FQualifiedFrameTime) SplitTime, bool bDeleteKeys )


description: Trim a section at the trim time

code: virtual void TrimSection ( [FQualifiedFrameTime](API\Runtime\Core\Misc\FQualifiedFrameTime) TrimTime, bool bTrimLeft, bool bDeleteKeys )


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


className: UMovieSceneGeometryCollectionSection

description: Movie scene section that control geometry cache playback


description: Adds a new animation to this track

code: virtual [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) * AddNewAnimation ( [FFrameNumber](API\Runtime\Core\Misc\FFrameNumber) KeyTime, [UGeometryCollectionComponent](API\Runtime\GeometryCollectionEngine\GeometryCollection\UGeometryCollect-) * GeomCacheComp )


description: Add a section to this track.

code: virtual void AddSection ( [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) & Section )


description:
Generates a new section suitable for use with this track.
a new section suitable for use with this track.

code: virtual [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) * CreateNewSection()


description:
Create a movie scene eval template for the specified section
A template, or null

code: virtual [FMovieSceneEvalTemplatePtr](API\Runtime\MovieScene\Evaluation\FMovieSceneEvalTemplatePtr) CreateTemplateForSection ( const [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) & InSection ) const


description: The optional offset time of this section

code: virtual [TOptional](API\Runtime\Core\IO\TOptional)< [FFrameTime](API\Runtime\Core\Misc\FFrameTime) > GetOffsetTime() const


description:
Called when all the sections of the track need to be retrieved.
List of all the sections in the track.

code: virtual const [TArray](API\Runtime\Core\Containers\TArray)< [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) * > & GetAllSections() const


description: Gets the animation sections at a certain time

code: [TArray](API\Runtime\Core\Containers\TArray)< [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) * > GetAnimSectionsAtTime ( [FFrameNumber](API\Runtime\Core\Misc\FFrameNumber) Time )


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


description:
Checks to see if the section is in this track.
True if the section is in this track.

code: virtual bool HasSection ( const [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) & Section ) const


description: Removes animation data.

code: virtual void RemoveAllAnimationData()


description: Whether or not this track has any data in it.

code: virtual bool IsEmpty() const


description: Removes a section from this track.

code: virtual void RemoveSection ( [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) & Section )


description: Removes a section from this track at a particular index

code: virtual void RemoveSectionAt ( int32 SectionIndex )


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


className: UMovieSceneGeometryCollectionTrack


className: DataType

module: GeometryFlowCore

code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< T, StorageTypeIdentifier > DataType


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamArg1()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamArg2()


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamResult()


code: TBinaryOpLambdaNode ( [TUniqueFunction](API\Runtime\Core\Templates\TUniqueFunction)< T(const T &A, const T &B)> && OpFuncIn )


description:
Does this track support this section class type?
Whether this track supports this section class type

code: virtual bool SupportsType ( [TSubclassOf](API\Runtime\CoreUObject\Templates\TSubclassOf)< [UMovieSceneSection](API\Runtime\MovieScene\UMovieSceneSection) > SectionClass ) const


className: TBinaryOpLambdaNode

code: template<typename T, int StorageTypeIdentifier> class TBinaryOpLambdaNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)

OpFunc

type: TUniqueFunction...


description: Determine which Inputs are required for the desired Output. This replaces the default behavior ("all inputs") with only the selected Input returned as a Requirement, which in turn allows the Graph Evaluator to skip evaluation of the other inputs.

code: virtual void CollectRequirements ( const [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Outputs, [TArray](API\Runtime\Core\Containers\TArray)< [FEvalRequirement](API\Plugins\GeometryFlowCore\FEvalRequirement) > & RequiredInputsOut )


className: DataContainerType

code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< T, StorageTypeIdentifier > DataContainerType


code: static const [FString](API\Runtime\Core\Containers\FString) InParamValue ( int32 InputNum )


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamValue()


description: This function is used to update the InputIndex, ie select which Output will be provided. This function always Invalidates the Output if theIndexwas changed.

code: virtual void UpdateSwitchInputIndex ( const int32 & NewSwitchIndex )


className: TSwitchNode

description: Use UpdateSwitchValue() to select the active switch Input

code: template<typename T, int NumInputs, int StorageTypeIdentifier> class TSwitchNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: static const [FString](API\Runtime\Core\Containers\FString) InParamValue()


className: TTransferNode

code: template<typename T, int StorageTypeIdentifier> class TTransferNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: virtual void CheckAdditionalInputs ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, bool & bRecomputeRequired, bool & bAllInputsValid )


description: TTransformerWithSettingsNodeAPI that subclasses must/can implement

code: virtual void ComputeOutput ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const SettingsType & SettingsIn, const InputType & InputIn, OutputType & OutputOut )


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamInput()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamSettings()


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamResult()


className: OutputDataType

code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< OutputType, OutputDataTypeIdentifier > OutputDataType


code: TTransformerWithSettingsNode()


className: TTransformerWithSettingsNode

code: template<typename InputType, int InputDataTypeIdentifier, typename SettingsType, int SettingsDataTypeIdentifier, typename OutputType, int OutputDataTypeIdentifier> class TTransformerWithSettingsNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


className: FDataDouble

code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< double,(int) [EDataTypes::Double](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FDataDouble


className: FDataFlags

code: struct FDataFlags

bIsMutableData

type: bool


className: FDataFloat

code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< float,(int) [EDataTypes::Float](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FDataFloat


description: Declare basic types for math

code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< int,(int) [EDataTypes::Integer](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FDataInt32


code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< FVector3d,(int) [EDataTypes::Vector3d](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FDataVector3d


code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< FVector3f,(int) [EDataTypes::Vector3f](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FDataVector3f


className: FDoubleInput

code: typedef [TBasicNodeInput](API\Plugins\GeometryFlowCore\TBasicNodeInput)< double,(int) [EDataTypes::Double](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FDoubleInput


className: FDoubleOutput

code: typedef [TBasicNodeOutput](API\Plugins\GeometryFlowCore\TBasicNodeOutput)< double,(int) [EDataTypes::Double](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FDoubleOutput


className: FDoubleSourceNode

code: typedef [TSourceNode](API\Plugins\GeometryFlowCore\TSourceNode)< double,(int) [EDataTypes::Double](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FDoubleSourceNode


code: FEvalRequirement ( const [FString](API\Runtime\Core\Containers\FString) & Name )


code: FEvalRequirement ( const [FString](API\Runtime\Core\Containers\FString) & NameIn, [FNodeInputFlags](API\Plugins\GeometryFlowCore\FNodeInputFlags) InputFlagsIn )


className: FEvalRequirement

code: struct FEvalRequirement

InputFlags

type: FNodeInputFlags

InputName

type: FString


code: virtual void CountCompute ( [FNode](API\Plugins\GeometryFlowCore\FNode) * Node )


code: virtual void CountEvaluation ( [FNode](API\Plugins\GeometryFlowCore\FNode) * Node )


code: int NumEvaluations() const


code: virtual ~FEvaluationInfo()


className: FEvaluationInfo

code: class FEvaluationInfo

ComputesCount

type: std::atomic< in...

Progress

type: FProgressCancel...


className: FFloatInput

code: typedef [TBasicNodeInput](API\Plugins\GeometryFlowCore\TBasicNodeInput)< float,(int) [EDataTypes::Float](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FFloatInput


className: FFloatOutput

code: typedef [TBasicNodeOutput](API\Plugins\GeometryFlowCore\TBasicNodeOutput)< float,(int) [EDataTypes::Float](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FFloatOutput


className: FFloatSourceNode

code: typedef [TSourceNode](API\Plugins\GeometryFlowCore\TSourceNode)< float,(int) [EDataTypes::Float](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FFloatSourceNode


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

code: virtual void ShutdownModule()


description: IModuleInterfaceimplementation

code: virtual void StartupModule()


className: FGeometryFlowCoreModule

code: class FGeometryFlowCoreModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


code: template<typename NodeType> [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) AddNodeOfType ( const [FString](API\Runtime\Core\Containers\FString) & Identifier, [ENodeCachingStrategy](API\Plugins\GeometryFlowCore\UE__GeometryFlow__ENodeCachingSt-) CachingStrategy )


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) AddConnection ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) FromNode, [FString](API\Runtime\Core\Containers\FString) FromOutput, [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) ToNode, [FString](API\Runtime\Core\Containers\FString) ToInput )


code: template<typename NodeType> [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) ApplyToNodeOfType ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) NodeHandle, [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(NodeType &)> ApplyFunc )


code: [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > ComputeOutputData ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) Node, [FString](API\Runtime\Core\Containers\FString) OutputName, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo, bool bStealOutputData )


code: void ConfigureCachingStrategy ( [ENodeCachingStrategy](API\Plugins\GeometryFlowCore\UE__GeometryFlow__ENodeCachingSt-) NewStrategy )


code: int32 CountOutputConnections ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) FromNode, const [FString](API\Runtime\Core\Containers\FString) & FromOutput ) const


code: [FString](API\Runtime\Core\Containers\FString) DebugDumpGraph ( [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< bool([TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [FNode](API\Plugins\GeometryFlowCore\FNode) >)> IncludeNodeFn ) const


code: template<typename T> [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) EvaluateResultInternal ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) Node, [FString](API\Runtime\Core\Containers\FString) OutputName, T & Storage, int32 StorageTypeIdentifier, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo, bool bTryTakeResult )


code: template<typename T> [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) EvaluateResult ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) Node, [FString](API\Runtime\Core\Containers\FString) OutputName, T & Storage, int32 StorageTypeIdentifier, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo, bool bTryTakeResult )


className: FConnection

code: struct FConnection

FromNode

type: FHandle


className: InvalidHandle

code: static InvalidHandle = -1;


code: bool operator&61;&61; &40; const FHandle & OtherHandle &41; const


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) FindConnectionForInput ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) ToNode, [FString](API\Runtime\Core\Containers\FString) ToInput, [FConnection](API\Plugins\GeometryFlowCore\FGraph\FConnection) & ConnectionOut ) const


code: [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [FNode](API\Plugins\GeometryFlowCore\FNode) > FindNode ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) Handle ) const


code: [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< FRWLock > FindNodeLock ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) Handle ) const


code: [ENodeCachingStrategy](API\Plugins\GeometryFlowCore\UE__GeometryFlow__ENodeCachingSt-) GetCachingStrategyForNode ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) NodeHandle ) const


className: FNodeInfo

code: struct FNodeInfo

CachingStrategy

type: ENodeCachingStr...

Node

type: TSafeSharedPtr<...


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) GetInputTypeForNode ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) NodeHandle, [FString](API\Runtime\Core\Containers\FString) InputName, int32 & Type ) const


code: [TSet](API\Runtime\Core\Containers\TSet)< [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) > GetNodesWithNoConnectedInputs() const


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) GetOutputTypeForNode ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) NodeHandle, [FString](API\Runtime\Core\Containers\FString) OutputName, int32 & Type ) const


code: [TSet](API\Runtime\Core\Containers\TSet)< [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) > GetSourceNodes() const


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) InferConnection ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) FromNode, [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) ToNode )


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) SetNodeCachingStrategy ( [FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) NodeHandle, [ENodeCachingStrategy](API\Plugins\GeometryFlowCore\UE__GeometryFlow__ENodeCachingSt-) Strategy )


className: FGraph

description: TODO:

code: class FGraph

AllNodeLocks

type: TMap<FHandle, ...

Connections

type: TArray<FConnec...

EvaluateLock

type: FCriticalSectio...


code: typedef [TBasicNodeInput](API\Plugins\GeometryFlowCore\TBasicNodeInput)< int,(int) [EDataTypes::Integer](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FInt32Input


code: typedef [TSourceNode](API\Plugins\GeometryFlowCore\TSourceNode)< int,(int) [EDataTypes::Integer](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FInt32SourceNode


code: void Add ( const [FString](API\Runtime\Core\Containers\FString) & Name, [FDataFlags](API\Plugins\GeometryFlowCore\FDataFlags) Flags )


code: void Add ( const [FString](API\Runtime\Core\Containers\FString) & Name, [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > Data, [FDataFlags](API\Plugins\GeometryFlowCore\FDataFlags) Flags )


code: bool Contains ( const [FString](API\Runtime\Core\Containers\FString) & Name ) const


code: [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > FindData ( const [FString](API\Runtime\Core\Containers\FString) & Name ) const


code: typedef [TBasicNodeOutput](API\Plugins\GeometryFlowCore\TBasicNodeOutput)< int,(int) [EDataTypes::Integer](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FInt32Output


code: [FDataFlags](API\Plugins\GeometryFlowCore\FDataFlags) GetDataFlags ( const [FString](API\Runtime\Core\Containers\FString) & Name ) const


code: const [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & GetNames() const


code: bool SetData ( const [FString](API\Runtime\Core\Containers\FString) & Name, [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > Data )


className: FNamedDataMap

code: class FNamedDataMap

Datas

type: TArray<TSafeSh...

DatasFlags

type: TArray<FDataFl...

Names

type: TArray<FString...


code: void AddInput ( [FString](API\Runtime\Core\Containers\FString) Name, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [INodeInput](API\Plugins\GeometryFlowCore\INodeInput) > && Input, [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > DefaultData )


code: void AddOutput ( [FString](API\Runtime\Core\Containers\FString) Name, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [INodeOutput](API\Plugins\GeometryFlowCore\INodeOutput) > && Output )


description: Helper functions for evaluation

code: bool CheckIsInputDirtyAndUpdate ( [FString](API\Runtime\Core\Containers\FString) Name, int32 NewTimestamp )


code: virtual void ClearAllOutputs()


code: virtual void ClearOutput ( const [FString](API\Runtime\Core\Containers\FString) & OutputName )


code: virtual void CollectAllRequirements ( [TArray](API\Runtime\Core\Containers\TArray)< [FEvalRequirement](API\Plugins\GeometryFlowCore\FEvalRequirement) > & RequiredInputsOut )


description: Find the list of named inputs that must be available to compute the named Outputs.Bydefault will return all Inputs if any of the listed Outputs exists on this Node.

code: virtual void CollectRequirements ( const [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Outputs, [TArray](API\Runtime\Core\Containers\TArray)< [FEvalRequirement](API\Plugins\GeometryFlowCore\FEvalRequirement) > & RequiredInputsOut )


description: Helper functions for setup

code: void ConfigureInputFlags ( const [FString](API\Runtime\Core\Containers\FString) & InputName, [FNodeInputFlags](API\Plugins\GeometryFlowCore\FNodeInputFlags) Flags )


code: virtual void EnumerateInputs ( [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(const [FString](API\Runtime\Core\Containers\FString) &[Name](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes), const [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [INodeInput](API\Plugins\GeometryFlowCore\INodeInput) > &Input)> EnumerateFunc ) const


code: virtual void EnumerateOutputs ( [TFunctionRef](API\Runtime\Core\GenericPlatform\TFunctionRef)< void(const [FString](API\Runtime\Core\Containers\FString) &[Name](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes), const [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [INodeOutput](API\Plugins\GeometryFlowCore\INodeOutput) > &Output)> EnumerateFunc ) const


code: [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > FindAndUpdateInputForEvaluate ( const [FString](API\Runtime\Core\Containers\FString) & InputName, const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, bool & bAccumModifiedOut, bool & bAccumValidOut )


code: void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FNodeInputInfo & operator&61; &40; const FNodeInputInfo & &41;


code: FNodeInputInfo & operator&61; &40; FNodeInputInfo && &41;


description: Explicitly non-copyable because of embeddedTUniquePtr


code: FNodeInputInfo &40; const FNodeInputInfo & &41;


code: FNodeInputInfo &40; FNodeInputInfo && &41;


className: FNodeInputInfo

code: struct FNodeInputInfo

Input

type: TUniquePtr<INo...


code: FNodeOutputInfo & operator&61; &40; const FNodeOutputInfo & &41;


code: FNodeOutputInfo & operator&61; &40; FNodeOutputInfo && &41;


code: FNodeOutputInfo &40; const FNodeOutputInfo & &41;


code: FNodeOutputInfo &40; FNodeOutputInfo && &41;


code: virtual [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > GetDefaultInputData ( [FString](API\Runtime\Core\Containers\FString) InputName ) const


className: FNodeOutputInfo

code: struct FNodeOutputInfo


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) GetInputType ( [FString](API\Runtime\Core\Containers\FString) Name, int32 & TypeOut ) const


code: const [FString](API\Runtime\Core\Containers\FString) & GetIdentifier() const


code: [FNodeInputFlags](API\Plugins\GeometryFlowCore\FNodeInputFlags) GetInputFlags ( [FString](API\Runtime\Core\Containers\FString) InputName ) const


code: [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > GetOutput ( const [FString](API\Runtime\Core\Containers\FString) & OutputName ) const


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) GetOutputType ( [FString](API\Runtime\Core\Containers\FString) Name, int32 & TypeOut ) const


description: Helper functions for evaluation

code: bool IsInputDirty ( [FString](API\Runtime\Core\Containers\FString) Name, int32 NewTimestamp ) const


code: virtual bool IsOutputAvailable ( [FString](API\Runtime\Core\Containers\FString) OutputName ) const


code: [FNode](API\Plugins\GeometryFlowCore\FNode) & operator= ( const [FNode](API\Plugins\GeometryFlowCore\FNode) & )


code: [FNode](API\Plugins\GeometryFlowCore\FNode) & operator= ( [FNode](API\Plugins\GeometryFlowCore\FNode) && )


code: void SetIdentifier ( const [FString](API\Runtime\Core\Containers\FString) & IdentifierIn )


code: virtual void SetOutput ( const [FString](API\Runtime\Core\Containers\FString) & OutputName, [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > NewData )


code: virtual [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > StealOutput ( [FString](API\Runtime\Core\Containers\FString) OutputName )


code: void UpdateInputTimestamp ( [FString](API\Runtime\Core\Containers\FString) Name, int32 NewTimestamp )


code: FNode ( const [FNode](API\Plugins\GeometryFlowCore\FNode) & )


code: FNode ( [FNode](API\Plugins\GeometryFlowCore\FNode) && )


className: FNode

code: class FNode

InputDefaultValues

type: TMap<FString, ...

NodeInputs

type: TArray<FNodeIn...

NodeOutputs

type: TArray<FNodeOu...


className: FNodeInputFlags

code: struct FNodeInputFlags

bCanTransformInput

type: bool


code: typedef [TBasicNodeInput](API\Plugins\GeometryFlowCore\TBasicNodeInput)< FVector3d,(int) [EDataTypes::Vector3d](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FVector3dInput


code: typedef [TBasicNodeOutput](API\Plugins\GeometryFlowCore\TBasicNodeOutput)< FVector3d,(int) [EDataTypes::Vector3d](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FVector3dOutput


code: typedef [TSourceNode](API\Plugins\GeometryFlowCore\TSourceNode)< FVector3d,(int) [EDataTypes::Vector3d](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FVector3dSourceNode


code: typedef [TBasicNodeInput](API\Plugins\GeometryFlowCore\TBasicNodeInput)< FVector3f,(int) [EDataTypes::Vector3f](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FVector3fInput


code: typedef [TBasicNodeOutput](API\Plugins\GeometryFlowCore\TBasicNodeOutput)< FVector3f,(int) [EDataTypes::Vector3f](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FVector3fOutput


code: typedef [TSourceNode](API\Plugins\GeometryFlowCore\TSourceNode)< FVector3f,(int) [EDataTypes::Vector3f](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FVector3fSourceNode


code: bool CopyData ( void * StorageType, int32 AsType ) const


code: template<typename T> void GetDataCopy ( T & DataOut, int32 AsType ) const


code: template<typename T> const T & GetDataConstRef ( int32 AsType ) const


code: int64 GetPayloadBytes() const


code: int32 GetPayloadType() const


code: virtual int32 GetTimestamp() const


code: const void * GetRawDataPointerUnsafe() const


code: template<typename T> void GiveTo ( T & DataOut, int32 AsType )


code: virtual bool IsSameType ( const [IData](API\Plugins\GeometryFlowCore\IData) & OtherType )


code: virtual void IncrementTimestamp()


code: bool MoveDataOut ( void * StorageType, int32 AsType )


code: virtual void SetMaxTimestamp ( int32 ExternalTimestamp )


code: virtual bool CanTransformInput() const


description: INodeInputvirtual API that implementations must implement

code: int32 GetDataType() const


description: INodeInputcontrol API

code: virtual [FNodeInputFlags](API\Plugins\GeometryFlowCore\FNodeInputFlags) GetInputFlags() const


code: virtual void SetInputFlags ( [FNodeInputFlags](API\Plugins\GeometryFlowCore\FNodeInputFlags) SetFlags )


className: INodeInput

code: class INodeInput

InputFlags

type: FNodeInputFlags


code: virtual void ClearOutputCache()


code: virtual [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > GetOutput() const


code: virtual bool HasCachedOutput() const


code: virtual [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > StealOutput()


code: virtual void UpdateOutput ( [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > NewData )


className: INodeOutput

code: class INodeOutput


className: FAddFloatNode

code: typedef [TBinaryOpAddNode](API\Plugins\GeometryFlowCore\MathNodes\TBinaryOpAddNode)< float,(int) [EDataTypes::Float](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EDataTypes) > FAddFloatNode


className: TBinaryOpAddNode

code: template<typename T, int StorageTypeIdentifier> class TBinaryOpAddNode : public [UE::GeometryFlow::TBinaryOpLambdaNode< T, StorageTypeIdentifier >](API\Plugins\GeometryFlowCore\BaseNodes\TBinaryOpLambdaNode)


code: virtual int32 GetDataType() const


className: TBasicNodeInput

code: template<typename T, int32 StorageTypeIdentifier> class TBasicNodeInput : public [UE::GeometryFlow::INodeInput](API\Plugins\GeometryFlowCore\INodeInput)


className: TBasicNodeOutput

code: template<typename T, int32 StorageTypeIdentifier> class TBasicNodeOutput : public [UE::GeometryFlow::INodeOutput](API\Plugins\GeometryFlowCore\INodeOutput)


code: virtual bool CopyData ( void * StorageType, int32 AsType ) const


code: const T & GetData() const


code: virtual int64 GetPayloadBytes() const


code: virtual int32 GetPayloadType() const


description: This is used byIData::GetDataConstRef(). Should probably not be called in other contexts...

code: virtual const void * GetRawDataPointerUnsafe() const


code: virtual bool MoveDataOut ( void * StorageType, int32 AsType )


code: TImmutableData ( [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< const T > && DataIn )


className: TImmutableData

code: template<typename T, int32 DataTypeIdentifier> class TImmutableData : public [UE::GeometryFlow::IData](API\Plugins\GeometryFlowCore\IData)

Data

type: TUniquePtr< con...


code: virtual bool CanTransformInput() const


className: TImmutableNodeInput

code: template<typename T, int32 StorageTypeIdentifier> class TImmutableNodeInput : public [UE::GeometryFlow::INodeInput](API\Plugins\GeometryFlowCore\INodeInput)


className: TImmutableNodeOutput

code: template<typename T, int32 StorageTypeIdentifier> class TImmutableNodeOutput : public [UE::GeometryFlow::INodeOutput](API\Plugins\GeometryFlowCore\INodeOutput)


code: void GetData ( T & DataOut ) const


code: void MoveData ( T && DataIn )


code: void SetData ( const T & DataIn )


code: TMovableData ( const T & InitialValue )


className: TMovableData

code: template<typename T, int32 DataTypeIdentifier> class TMovableData : public [UE::GeometryFlow::IData](API\Plugins\GeometryFlowCore\IData)

type: T


className: TSafeSharedPtr

description: Alias for Thread-SafeTSharedPtr

code: typedef [TSharedPtr](API\Runtime\Core\Templates\TSharedPtr)< T, ESPMode::ThreadSafe > TSafeSharedPtr


code: virtual void CollectRequirements ( const [TArray](API\Runtime\Core\Containers\TArray)< [FString](API\Runtime\Core\Containers\FString) > & Outputs, [TArray](API\Runtime\Core\Containers\TArray)< [FEvalRequirement](API\Plugins\GeometryFlowCore\FEvalRequirement) > & RequiredInputsOut )


className: CppType

code: typedef T CppType


className: DataType

code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< T, StorageTypeIdentifier > DataType


className: DataTypeIdentifier

code: static constexpr int DataTypeIdentifier = StorageTypeIdentifier;


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamValue()


code: void UpdateSourceValue ( const T & NewValue )


code: virtual void CollectAllRequirements ( [TArray](API\Runtime\Core\Containers\TArray)< [FEvalRequirement](API\Plugins\GeometryFlowCore\FEvalRequirement) > & RequiredInputsOut )


className: TSourceNode

code: template<typename T, int32 StorageTypeIdentifier> class TSourceNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: namespace UE { namespace GeometryFlow { enum EGeometryFlowResult { Ok = 0, NodeDoesNotExist = 1, InputDoesNotExist = 2, OutputDoesNotExist = 3, UnmatchedTypes = 4, ConnectionDoesNotExist = 5, NoMatchesFound = 6, MultipleMatchingAmbiguityFound = 7, OperationCancelled = 8, InputAlreadyConnected = 9, } } }


description: TODO: this needs more work need option to opportunistically cache, ie on multi-use of output, or when we can't re-use anyway (this is currently what NeverCache does?)

code: namespace UE { namespace GeometryFlow { enum ENodeCachingStrategy { Default = 0, AlwaysCache = 1, NeverCache = 2, } } }


code: namespace UE { namespace GeometryFlow { template<typename T> [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) UE::GeometryFlow::ExtractData ( [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [IData](API\Plugins\GeometryFlowCore\IData) > Data, T & Storage, int32 StorageTypeIdentifier, bool bTryTakeResult ) } }


description: Returns an indices into the Connections array.

code: namespace UE { namespace GeometryFlow { [TArray](API\Runtime\Core\Containers\TArray)< int > UE::GeometryFlow::FindAllConnectionsToNode ( [FGraph::FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) ToNodeID, const [TArray](API\Runtime\Core\Containers\TArray)< [FGraph::FConnection](API\Plugins\GeometryFlowCore\FGraph\FConnection) > & Connections ) } }


description: Returns an index into the Connections array or -1 if not found.

code: namespace UE { namespace GeometryFlow { int UE::GeometryFlow::FindAnyConnectionFromNode ( [FGraph::FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) FromNode, const [TArray](API\Runtime\Core\Containers\TArray)< [FGraph::FConnection](API\Plugins\GeometryFlowCore\FGraph\FConnection) > & Connections ) } }


code: namespace UE { namespace GeometryFlow { int UE::GeometryFlow::FindAnyConnectionToNode ( [FGraph::FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) ToNode, const [TArray](API\Runtime\Core\Containers\TArray)< [FGraph::FConnection](API\Plugins\GeometryFlowCore\FGraph\FConnection) > & Connections ) } }


code: namespace UE { namespace GeometryFlow { uint32 UE::GeometryFlow::GetTypeHash ( [FGraph::FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) Handle ) } }


code: namespace UE { namespace GeometryFlow { template<typename [DataType](API\Plugins\OptimusCore\DataType)> [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [TBasicNodeInput](API\Plugins\GeometryFlowCore\TBasicNodeInput)< [DataType](API\Plugins\OptimusCore\DataType), DataType::DataTypeIdentifier > > UE::GeometryFlow::MakeBasicInput() } }


description: Every data type in a GeometryFlow graph requires a unique integer to identify the type. This enum defines various integer ranges used by the known data/node libraries.

code: namespace UE { namespace GeometryFlow { enum EDataTypes { Integer = 0, Float = 1, Double = 2, Vector3f = 20, Vector3d = 21, Name = 30, BaseMeshProcessingTypes = 1000, BaseMeshProcessingTypesEditor = 2000, UserDefinedTypes = 10000, } } }


code: namespace UE { namespace GeometryFlow { template<typename [DataType](API\Plugins\OptimusCore\DataType)> [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [TBasicNodeOutput](API\Plugins\GeometryFlowCore\TBasicNodeOutput)< [DataType](API\Plugins\OptimusCore\DataType), DataType::DataTypeIdentifier > > UE::GeometryFlow::MakeBasicOutput() } }


code: namespace UE { namespace GeometryFlow { template<typename [DataType](API\Plugins\OptimusCore\DataType)> [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< [DataType](API\Plugins\OptimusCore\DataType), DataType::DataTypeIdentifier > > UE::GeometryFlow::MakeMovableData ( [DataType](API\Plugins\OptimusCore\DataType) && Data ) } }


description: Wrapper around MakeShared for creating a TSafeSharedPtr

code: namespace UE { namespace GeometryFlow { template<typename T, typename... InArgTypes> [TSafeSharedPtr](API\Plugins\GeometryFlowCore\TSafeSharedPtr)< T > UE::GeometryFlow::MakeSafeShared ( InArgTypes &&... Args ) } }


code: namespace UE { namespace GeometryFlow { template<typename SettingsType> void UE::GeometryFlow::UpdateSettingsSourceNodeValue ( [FGraph](API\Plugins\GeometryFlowCore\FGraph) & Graph, [FGraph::FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) NodeHandle, const SettingsType & NewSettings ) } }


code: namespace UE { namespace GeometryFlow { template<typename SourceNodeType> void UE::GeometryFlow::UpdateSourceNodeValue ( [FGraph](API\Plugins\GeometryFlowCore\FGraph) & Graph, [FGraph::FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) NodeHandle, const typename SourceNodeType::CppType & NewValue ) } }


description: Update the integer index that controls which Input to aTSwitchNodewill be provided as it's Output.

code: namespace UE { namespace GeometryFlow { template<typename SwitchNodeType> void UE::GeometryFlow::UpdateSwitchNodeInputIndex ( [FGraph](API\Plugins\GeometryFlowCore\FGraph) & Graph, [FGraph::FHandle](API\Plugins\GeometryFlowCore\FGraph\FHandle) NodeHandle, int32 NewSwitchIndex ) } }


className: FCollisionGeometry

module: GeometryFlowMeshProcessing

code: struct FCollisionGeometry


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::CollisionGeometry;


className: FCollisionGeometryInput


className: FCollisionGeometryOutput


className: FCollisionGeometrySourceNode


className: FCollisionGeometryTransferNode


className: FDataCollisionGeometry

description: Declares FDataCollisionGeometry, FCollisionGeometryInput, FCollisionGeometryOutput, FCollisionGeometrySourceNode


className: FDataDynamicMesh

description: Declares FDataDynamicMesh, FDynamicMeshInput, FDynamicMeshOutput, FDynamicMeshSourceNode


className: FDataIndexSets

description: Declares FDataIndexSets, FIndexSetsInput, FIndexSetsOutput, FIndexSetsSourceNode


className: FDataMaterialIDToTextureMap


className: FDataMeshMakeBakingCacheSettings


className: FDataNormalMapImage

description: Declares FDataNormalMapImage, FNormalMapImageInput, FNormalMapImageOutput, FNormalMapImageSourceNode


className: FDataTextureImage

description: Declares FDataTextureImage, FTextureImageInput, FTextureImageOutput, FTextureImageSourceNode


className: FDynamicMeshInput


className: FDataWeightMap


className: FDynamicMeshOutput


className: FDynamicMeshSourceNode


className: FDynamicMeshTransferNode


description: Utility functions

code: void AppendSet()


code: void AppendSet ( const [TArray](API\Runtime\Core\Containers\TArray)< int32 > & SetValues )


className: DataTypeIdentifier

code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::IndexSets;


code: template<typename ListType> void GetAllValues ( ListType & ValuesOut ) const


code: int32 NumSets() const


className: FIndexSets

code: struct FIndexSets

IndexSets

type: TArray<TArray<...


className: FIndexSetsInput


className: FIndexSetsOutput


className: FIndexSetsSourceNode


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamDetailMesh()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamSettings()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamTargetMesh()


className: SettingsDataType


code: FMakeMeshBakingCacheNode()


className: FMakeMeshBakingCacheNode

code: class FMakeMeshBakingCacheNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::MaterialIDToTextureMap;


className: FMaterialIDToTextureMapSourceNode


className: FMaterialIDToTextureMapInput


className: FMaterialIDToTextureMap

code: struct FMaterialIDToTextureMap

MaterialIDTextureMap

type: TMap< int32,TS...


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::BakingCache;


className: FMaterialIDToTextureMapOutput


className: FMeshBakingCache

code: struct FMeshBakingCache

DetailMesh

description: Have to make copies of these - boo!

DetailSpatial

type: FDynamicMeshAAB...


className: FMeshBakingCacheData


className: FMeshMakeBakingCacheSettingsSourceNode


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::MakeBakingCacheSettings;


className: FMeshMakeBakingCacheSettings

code: struct FMeshMakeBakingCacheSettings

Dimensions

type: FImageDimension...

Thickness

type: float

UVLayer

type: int


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamCache()


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::NormalMapImage;


className: FNormalMapImage

code: struct FNormalMapImage

Image

type: TImageBuilder< ...


className: FNormalMapImageInput


className: FNormalMapImageOutput


className: FNormalMapImageSourceNode


className: FTextureImage

code: struct FTextureImage


className: DataTypeIdentifier

code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::TextureImage;


className: FTextureImageInput


className: FTextureImageOutput


className: FTextureImageSourceNode


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::WeightMap;


className: FWeightMap

code: struct FWeightMap

Weights

type: TArray< float >


className: FWeightMapInput


className: FWeightMapSourceNode


className: FWeightMapOutput


code: virtual void ShutdownModule()


description: IModuleInterfaceimplementation

code: virtual void StartupModule()


className: FGeometryFlowMeshProcessingModule

code: class FGeometryFlowMeshProcessingModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: FBakeMeshMultiTextureSettingsSourceNode


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::BakeMultiTextureSettings;


className: FBakeMeshMultiTextureSettings


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamBakeCache()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamMaterialTextures()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamSettings()


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamTextureImage()


className: SettingsDataType


code: FBakeMeshMultiTextureNode()


className: FBakeMeshNormalMapSettingsSourceNode


className: FBakeMeshMultiTextureNode

code: class FBakeMeshMultiTextureNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: static const [FString](API\Runtime\Core\Containers\FString) InParamTangents()


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamNormalMap()


code: FBakeMeshNormalMapNode()


className: FBakeMeshNormalMapNode

code: class FBakeMeshNormalMapNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::BakeNormalMapSettings;


className: FBakeMeshNormalMapSettings

code: struct FBakeMeshNormalMapSettings

MaxDistance

type: double


className: FBakeMeshTextureImageSettingsSourceNode


className: DataTypeIdentifier

code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::BakeTextureImageSettings;


className: FBakeMeshTextureImageSettings

code: struct FBakeMeshTextureImageSettings


code: static const [FString](API\Runtime\Core\Containers\FString) InParamImage()


code: FBakeMeshTextureImageNode()


className: FBakeMeshTextureImageNode

code: class FBakeMeshTextureImageNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


className: FDataBakeMeshMultiTextureSettings


className: FDataBakeMeshNormalMapSettings


className: FDataBakeMeshTextureImageSettings


code: virtual void ComputeIndexSets ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, [FIndexSets](API\Plugins\GeometryFlowMeshProcessing\DataTypes\FIndexSets) & SetsOut )


code: virtual void CheckAdditionalInputs ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, bool & bRecomputeRequired, bool & bAllInputsValid )


code: void ComputeIndexSetsForGroups ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, const [TSet](API\Runtime\Core\Containers\TSet)< int32 > & IgnoreGroups, [TFunction](API\Runtime\Core\GenericPlatform\TFunction)< int32(int)> TriangleGroupFn, [FIndexSets](API\Plugins\GeometryFlowMeshProcessing\DataTypes\FIndexSets) & SetsOut )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamGroupLayer()


className: FMakeTriangleSetsFromGroupsNode

description: Gather triangles into sets based on their GroupIDs. Optionally exclude any triangles belonging to specified groups.


code: FMakeTriangleSetsFromGroupsNode()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamIgnoreGroups()


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) InParam()


code: FMakeTriangleSetsFromMeshNode()


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamIndexSets()


className: FMakeTriangleSetsFromMeshNode

code: class FMakeTriangleSetsFromMeshNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: static const [FString](API\Runtime\Core\Containers\FString) InParamThreshold()


code: FMakeTriangleSetsFromWeightMapNode()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamWeightMap()


className: FMakeTriangleSetsFromWeightMapNode

description: If one triangle vertex has a weight greater than the given threshold, include it in the output triangle set. TODO: Optionally make it so theaveragetriangle vertex weight has to exceed the threshold. Or the minumum triangle vertex weight.


description: FProcessMeshBaseNodeAPI that subclasses must/can implement

code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FCompactMeshNode()


className: FCompactMeshNode

description: FCompactMeshNodecompacts the input mesh, to remove gaps in the vertex/triangle indexing. This node can be applied in-place.

code: class FCompactMeshNode : public [UE::GeometryFlow::FProcessMeshBaseNode](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FProcessMeshBaseNode)


code: void ComputeNormals ( const [FMeshNormalsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshNormalsSettings) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut )


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshNormalsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshNormalsSettings) & Settings, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshNormalsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshNormalsSettings) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: FComputeMeshNormalsNode

description: Recompute Normals overlay for input Mesh. Can apply in-place.

code: class FComputeMeshNormalsNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshNormalsSettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


code: FComputeMeshNormalsNode()


description: Subclasses only have to implement this

code: virtual void ApplyNodeToMesh ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: FComputeMeshPerVertexNormalsNode

description: Recompute per-vertex normals stored directly on the mesh. Can apply in-place.


className: FComputeMeshPerVertexOverlayNormalsNode

description: Recompute per-vertex normals in Normals Overlay for input mesh. Can apply in-place.


description: TTransformerWithSettingsNodeAPI that subclasses must/can implement

code: virtual void ComputeOutput ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshTangentsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshTangentsSettings) & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & InputIn, [FMeshTangentsd](API\Runtime\GeometryCore\DynamicMesh\FMeshTangentsd) & OutputOut )


code: FComputeMeshTangentsNode()


className: FComputeMeshTangentsNode

code: class FComputeMeshTangentsNode : public [UE::GeometryFlow::TTransformerWithSettingsNode< FDynamicMesh3,(int) EMeshProcessingDataTypes::DynamicMesh, FMeshTangentsSettings,(int) EMeshProcessingDataTypes::TangentsSettings, FMeshTangentsd,(int) EMeshProcessingDataTypes::MeshTangentSet >](API\Plugins\GeometryFlowCore\BaseNodes\TTransformerWithSettingsNode)


className: FDataGenerateConvexHullMeshSettings


className: FDataMeshMakeCleanGeometrySettings


className: FDataMeshNormalFlowSettings


className: FDataMeshRecalculateUVsSettings


className: FDataMeshRepackUVsSettings


className: FDataNormalsSettings


className: FDataSimplifySettings


className: FDataSolidifySettings


className: FDataThickenSettings


className: FDataTangentsSettings


className: FDataVoxClosureSettings


className: FDataVoxOffsetSettings


className: FDataVoxOpeningSettings


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) MakeConvexHullMesh ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, const [FGenerateConvexHullMeshSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FGenerateConvexH-_2) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FGenerateConvexHullMeshSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FGenerateConvexH-_2) & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: FGenerateConvexHullMeshNode

code: class FGenerateConvexHullMeshNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FGenerateConvexHullMeshSettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


className: DataTypeIdentifier

code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::GenerateConvexHullMeshSettings;


className: FGenerateConvexHullMeshSettings

code: struct FGenerateConvexHullMeshSettings


code: virtual void CheckAdditionalInputs ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, bool & bRecomputeRequired, bool & bAllInputsValid )


code: void DeleteTrianglesForMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & EditMesh )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamTriangleLists()


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FMeshDeleteTrianglesNode()


className: FMeshDeleteTrianglesNode


code: void ApplyMakeCleanGeometry ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, const [FMeshMakeCleanGeometrySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshMakeCleanGe-_2) & Settings )


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshMakeCleanGeometrySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshMakeCleanGe-_2) & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshMakeCleanGeometrySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshMakeCleanGe-_2) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: FMeshMakeCleanGeometryNode

code: class FMeshMakeCleanGeometryNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshMakeCleanGeometrySettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::MakeCleanGeometrySettings;


className: FMeshMakeCleanGeometrySettings

code: struct FMeshMakeCleanGeometrySettings


code: void DoNormalFlow ( const [FMeshNormalFlowSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshNormalFlowS-_1) & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & ProjectionTargetMesh, bool bAttributesHaveBeenDiscarded, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & EditMesh )


description: Beside the intput mesh and settings, we also take a "target mesh" that will be the projection target.

code: static const [FString](API\Runtime\Core\Containers\FString) InParamTargetMesh()


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshNormalFlowSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshNormalFlowS-_1) & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshNormalFlowSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshNormalFlowS-_1) & SettingsIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FMeshNormalFlowNode()


className: FMeshNormalFlowNode

code: class FMeshNormalFlowNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshNormalFlowSettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


className: FMeshNormalFlowSettingsSourceNode


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::NormalFlowSettings;


className: FMeshNormalFlowSettings


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::NormalsSettings;


className: FMeshRecalculateUVsSettingsSourceNode


className: FMeshNormalsSettings

code: struct FMeshNormalsSettings

AngleThresholdDeg

description: For FromAngleThreshold type

NormalsType

type: EComputeNormals...


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshRecalculateUVsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshRecalculate-_2) & Settings, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshRecalculateUVsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshRecalculate-_2) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: void RecalculateUVsOnMesh ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & EditMesh, const [FMeshRecalculateUVsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshRecalculate-_2) & Settings )


code: FMeshRecalculateUVsNode()


className: FMeshRecalculateUVsNode

code: class FMeshRecalculateUVsNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshRecalculateUVsSettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::RecalculateUVsSettings;


className: FMeshRecalculateUVsSettings

code: struct FMeshRecalculateUVsSettings

UnwrapType

type: ERecalculateUVs...


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshRepackUVsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshRepackUVsSettings) & Settings, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: void RepackUVsForMesh ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & EditMesh, const [FMeshRepackUVsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshRepackUVsSettings) & Settings )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshRepackUVsSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshRepackUVsSettings) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FMeshRepackUVsNode()


className: FMeshRepackUVsNode

code: class FMeshRepackUVsNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshRepackUVsSettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


className: FMeshRepackUVsSettingsSourceNode


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::RepackUVsSettings;


className: FMeshRepackUVsSettings

code: struct FMeshRepackUVsSettings


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::SimplifySettings;


className: FMeshSimplifySettings

code: struct FMeshSimplifySettings

GroupBorderConstraints

type: EEdgeRefineFlag...

SimplifyType

type: EMeshSimplifyTy...

TargetType

type: EMeshSimplifyTa...


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::SolidifySettings;


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::TangentsSettings;


className: FMeshSolidifySettings

code: struct FMeshSolidifySettings


className: FMeshTangentsTransferNode


className: FMeshTangentsSettings

code: struct FMeshTangentsSettings

TangentsType

type: EComputeTangent...


code: virtual void CheckAdditionalInputs ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, bool & bRecomputeRequired, bool & bAllInputsValid )


code: void ApplyThicken ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, const [FMeshThickenSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshThickenSettings) & Settings, const [TArray](API\Runtime\Core\Containers\TArray)< float > & VertexWeights )


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshThickenSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshThickenSettings) & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamWeightMap()


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshThickenSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshThickenSettings) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: FMeshThickenNode

code: class FMeshThickenNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshThickenSettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


code: FMeshThickenNode()


className: DataTypeIdentifier

code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::ThickenSettings;


className: FMeshThickenSettings

code: struct FMeshThickenSettings


className: FNormalsSettingsSourceNode


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamMesh()


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamResultMesh()


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FProcessMeshBaseNode()


className: FProcessMeshBaseNode

code: class FProcessMeshBaseNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


description: Subclasses only have to implement this

code: void ApplyNodeToMesh ( [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FSimpleInPlaceProcessMeshBaseNode()


className: FSimpleInPlaceProcessMeshBaseNode

description: FSimpleInPlaceProcessMeshBaseNodeprovides a standard pattern for a simple "In-Place" mesh processing operation, eg something like recomputing normals where it would not make sense to cache the output and there are no configuration settings. The subclass only has to implement theApplyNodeToMesh()function.


code: void ApplySimplify ( const [FMeshSimplifySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshSimplifySettings) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: template<typename SimplifierType> void DoSimplifyOfType ( const [FMeshSimplifySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshSimplifySettings) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * TargetMesh, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshSimplifySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshSimplifySettings) & Settings, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshSimplifySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshSimplifySettings) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FSimplifyMeshNode()


className: FSimplifyMeshNode

code: class FSimplifyMeshNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshSimplifySettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


className: FSimplifySettingsSourceNode


code: void ApplySolidify ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, const [FMeshSolidifySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshSolidifySettings) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut )


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshSolidifySettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FMeshSolidifySettings) & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: FSolidifyMeshNode

code: class FSolidifyMeshNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshSolidifySettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


className: FSolidifySettingsSourceNode


className: FTangentsSettingsSourceNode


className: FThickenSettingsSourceNode


code: virtual void CheckAdditionalInputs ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, bool & bRecomputeRequired, bool & bAllInputsValid )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamMaterialSourceMesh()


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void TransferMaterialIDs ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) * TargetMesh )


code: FTransferMeshMaterialIDsNode()


className: FTransferMeshMaterialIDsNode

description: FTransferMeshMaterialIDsNodetransfers Material IDs from a SourceMesh to the Input mesh and returns in the Output mesh (can be applied in-place)


className: FVoxClosureMeshNode


className: FVoxClosureSettingsSourceNode


className: FVoxClosureSettings


className: FVoxDilateMeshNode


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::VoxMorphologyOpSettings;


className: FVoxMorphologyOpSettings

code: struct FVoxMorphologyOpSettings


className: FVoxOffsetSettingsSourceNode


className: FVoxOffsetSettings


className: FVoxOpeningMeshNode


className: FVoxOpeningSettingsSourceNode


className: FVoxOpeningSettings


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamMesh()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamSettings()


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamResultMesh()


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const SettingsType & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: virtual void ProcessMeshInPlace ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const SettingsType & SettingsIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshInOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: SettingsDataType

code: typedef [TMovableData](API\Plugins\GeometryFlowCore\TMovableData)< SettingsType, SettingsType::DataTypeIdentifier > SettingsDataType


code: TProcessMeshWithSettingsBaseNode()


className: TProcessMeshWithSettingsBaseNode

code: template<typename SettingsType> class TProcessMeshWithSettingsBaseNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: void ApplyMorphology ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, const [FVoxMorphologyOpSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FVoxMorphologyOp-) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut )


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FVoxMorphologyOpSettings](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\FVoxMorphologyOp-) & SettingsIn, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: TVoxMorphologyMeshNode

code: template<[TImplicitMorphology](API\Runtime\GeometryCore\Implicit\TImplicitMorphology)< [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) >::EMorphologyOp MorphologyOp> class TVoxMorphologyMeshNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FVoxMorphologyOpSettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


code: namespace UE { namespace GeometryFlow { enum EComputeNormalsType { PerTriangle = 0, PerVertex = 1, RecomputeExistingTopology = 2, FromFaceAngleThreshold = 3, FromGroups = 4, } } }


code: namespace UE { namespace GeometryFlow { enum EMeshProcessingDataTypes { DynamicMesh = (int)EDataTypes::BaseMeshProcessingTypes + 1, MeshNormalSet = (int)EDataTypes::BaseMeshProcessingTypes + 2, MeshTangentSet = (int)EDataTypes::BaseMeshProcessingTypes + 3, BakingCache = (int)EDataTypes::BaseMeshProcessingTypes + 10, TextureImage = (int)EDataTypes::BaseMeshProcessingTypes + 11, NormalMapImage = (int)EDataTypes::BaseMeshProcessingTypes + 12, CollisionGeometry = (int)EDataTypes::BaseMeshProcessingTypes + 13, IndexSets = (int)EDataTypes::BaseMeshProcessingTypes + 14, WeightMap = (int)EDataTypes::BaseMeshProcessingTypes + 15, MaterialIDToTextureMap = (int)EDataTypes::BaseMeshProcessingTypes + 16, SolidifySettings = (int)EDataTypes::BaseMeshProcessingTypes + 100, VoxMorphologyOpSettings = (int)EDataTypes::BaseMeshProcessingTypes + 101, ThickenSettings = (int)EDataTypes::BaseMeshProcessingTypes + 102, GenerateConvexHullMeshSettings = (int)EDataTypes::BaseMeshProcessingTypes + 103, SimplifySettings = (int)EDataTypes::BaseMeshProcessingTypes + 110, NormalFlowSettings = (int)EDataTypes::BaseMeshProcessingTypes + 111, NormalsSettings = (int)EDataTypes::BaseMeshProcessingTypes + 120, TangentsSettings = (int)EDataTypes::BaseMeshProcessingTypes + 121, MakeCleanGeometrySettings = (int)EDataTypes::BaseMeshProcessingTypes + 130, RecalculateUVsSettings = (int)EDataTypes::BaseMeshProcessingTypes + 150, RepackUVsSettings = (int)EDataTypes::BaseMeshProcessingTypes + 151, MakeBakingCacheSettings = (int)EDataTypes::BaseMeshProcessingTypes + 160, BakeNormalMapSettings = (int)EDataTypes::BaseMeshProcessingTypes + 161, BakeTextureImageSettings = (int)EDataTypes::BaseMeshProcessingTypes + 162, BakeMultiTextureSettings = (int)EDataTypes::BaseMeshProcessingTypes + 163, GenerateCollisionConvexHullsSettings = (int)EDataTypes::BaseMeshProcessingTypes + 200, GenerateSimpleCollisionSettings = (int)EDataTypes::BaseMeshProcessingTypes + 201, } } }


code: namespace UE { namespace GeometryFlow { enum ERecalculateUVsUnwrapType { Auto = 0, ExpMap = 1, Conformal = 2, } } }


code: namespace UE { namespace GeometryFlow { enum EMeshSimplifyType { Standard = 0, VolumePreserving = 1, AttributeAware = 2, } } }


code: namespace UE { namespace GeometryFlow { enum EMeshSimplifyTargetType { TriangleCount = 0, VertexCount = 1, TrianglePercentage = 2, GeometricDeviation = 3, } } }


code: namespace UE { namespace GeometryFlow { enum EComputeTangentsType { PerTriangle = 0, FastMikkT = 1, } } }


description: This function is a workaround for an issue with Clang targeting Windows. A function in a class template cannot contain log statements if that class template is derived from by a type annotated with {Module}_API.

code: namespace UE { namespace GeometryFlow { namespace Private { void UE::GeometryFlow::Private::LogMeshProcessing ( const TCHAR * Identifier, const TCHAR * Message ) } } }


className: FDataGenerateSimpleCollisionSettings


className: DataTypeIdentifier

code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypes::GenerateSimpleCollisionSettings;


className: FGenerateConvexHullSettings

code: struct FGenerateConvexHullSettings

bPrefilterVertices

type: bool


className: FGenerateSweptHullSettings

code: struct FGenerateSweptHullSettings

SweepAxis

type: FMeshSimpleShap...


className: FGenerateSimpleCollisionSettings

code: struct FGenerateSimpleCollisionSettings

Type

type: ESimpleCollisio...


code: virtual void Evaluate ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: [EGeometryFlowResult](API\Plugins\GeometryFlowCore\UE__GeometryFlow__EGeometryFlowR-) EvaluateInternal ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & Mesh, const [FIndexSets](API\Plugins\GeometryFlowMeshProcessing\DataTypes\FIndexSets) & IndexData, const [FGenerateSimpleCollisionSettings](API\Plugins\GeometryFlowMeshProcessing\PhysicsNodes\FGenerateSimpleC-_1) & Settings, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo, [FCollisionGeometry](API\Plugins\GeometryFlowMeshProcessing\DataTypes\FCollisionGeometry) & OutCollisionGeometry )


code: static const [FString](API\Runtime\Core\Containers\FString) InParamIndexSets()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamMesh()


code: static const [FString](API\Runtime\Core\Containers\FString) InParamSettings()


code: static const [FString](API\Runtime\Core\Containers\FString) OutParamGeometry()


code: FGenerateSimpleCollisionNode()


className: FGenerateSimpleCollisionNode

code: class FGenerateSimpleCollisionNode : public [UE::GeometryFlow::FNode](API\Plugins\GeometryFlowCore\FNode)


code: namespace UE { namespace GeometryFlow { enum ESimpleCollisionGeometryType { AlignedBoxes, OrientedBoxes, MinimalSpheres, Capsules, ConvexHulls, SweptHulls, MinVolume, None, } } }


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

module: GeometryFlowMeshProcessingEditor

code: virtual void ShutdownModule()


description: IModuleInterfaceimplementation

code: virtual void StartupModule()


className: FGeometryFlowMeshProcessingEditorModule

code: class FGeometryFlowMeshProcessingEditorModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


className: FDataMeshAutoGenerateUVsSettings


className: FMeshAutoGenerateUVsSettingsSourceNode


code: virtual void GenerateUVs ( const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, const [FMeshAutoGenerateUVsSettings](API\Plugins\GeometryFlowMeshProcessingEditor\MeshProcessingNodes\FMeshAutoGenerat-_2) & Settings, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


code: FMeshAutoGenerateUVsNode()


code: virtual void ProcessMesh ( const [FNamedDataMap](API\Plugins\GeometryFlowCore\FNamedDataMap) & DatasIn, const [FMeshAutoGenerateUVsSettings](API\Plugins\GeometryFlowMeshProcessingEditor\MeshProcessingNodes\FMeshAutoGenerat-_2) & Settings, const [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshIn, [FDynamicMesh3](API\Runtime\GeometryCore\DynamicMesh\FDynamicMesh3) & MeshOut, [TUniquePtr](API\Runtime\Core\Templates\TUniquePtr)< [FEvaluationInfo](API\Plugins\GeometryFlowCore\FEvaluationInfo) > & EvaluationInfo )


className: FMeshAutoGenerateUVsNode

code: class FMeshAutoGenerateUVsNode : public [UE::GeometryFlow::TProcessMeshWithSettingsBaseNode< FMeshAutoGenerateUVsSettings >](API\Plugins\GeometryFlowMeshProcessing\MeshProcessingNodes\TProcessMeshWith-)


code: static constexpr int DataTypeIdentifier = (int) EMeshProcessingDataTypesEditor::MeshAutoGenerateUVsSettings;


className: FMeshAutoGenerateUVsSettings

code: struct FMeshAutoGenerateUVsSettings

Method

type: EAutoUVMethod

NumInitialPatches

description: PatchBuilder parameters.

UVAtlasStretch

description: UVAtlas parameters.

XAtlasMaxIterations

description: XAtlas parameters.


code: namespace UE { namespace GeometryFlow { enum EAutoUVMethod { PatchBuilder = 0, UVAtlas = 1, XAtlas = 2, } } }


code: namespace UE { namespace GeometryFlow { enum EMeshProcessingDataTypesEditor { MeshAutoGenerateUVsSettings = (int)EDataTypes::BaseMeshProcessingTypesEditor + 1, } } }


description: Pure virtual that must be overloaded by the inheriting class. Use this method to serialize any UObjects contained that you wish to keep around.

module: GeometryMode

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


description: Return true if new object has been added to the array.

code: bool CacheSelectedData ( [TArray](API\Runtime\Core\Containers\TArray)< [HGeomMidPoints](API\Plugins\GeometryMode\FEdModeGeometry\HGeomMidPoints) > & raGeomData, const [FGeomObject](API\Plugins\GeometryMode\FGeomObject) & rGeomObject ) const


description:
Allows an editor mode to override the bounding box used to focus the viewport on a selection
bool true if the mode overrides the box and populated InOutBox, false if it did not populate InOutBox

code: virtual bool ComputeBoundingBoxForViewportFocus ( [AActor](API\Runtime\Engine\GameFramework\AActor) * Actor, [UPrimitiveComponent](API\Runtime\Engine\Components\UPrimitiveComponent) * PrimitiveComponent, FBox & InOutBox ) const


description: Returns the number of objects that are selected.

code: virtual int32 CountObjectsSelected()


description: Returns the number of edges that are selected.

code: virtual int32 CountSelectedEdges()


description: Returns the number of polygons that are selected.

code: virtual int32 CountSelectedPolygons()


description: Returns the number of vertices that are selected.

code: virtual int32 CountSelectedVertices()


code: static [TSharedRef](API\Runtime\Core\Templates\TSharedRef)< [FEdModeGeometry](API\Plugins\GeometryMode\FEdModeGeometry) > Create()


code: virtual bool FinalizeSourceData()


description: Return true everything was found (or there was nothing to find)

code: bool FindFromCache ( [TArray](API\Runtime\Core\Containers\TArray)< [HGeomMidPoints](API\Plugins\GeometryMode\FEdModeGeometry\HGeomMidPoints) > & raGeomData, [FGeomObject](API\Plugins\GeometryMode\FGeomObject) & rGeomObject, [TArray](API\Runtime\Core\Containers\TArray)< [FGeomBase](API\Plugins\GeometryMode\FGeomBase) * > & raSelectedGeom ) const


description: Deselects all edges, polygons, and vertices for all selected objects.

code: virtual void GeometrySelectNone ( bool bStoreSelection, bool bResetPivot )


code: virtual bool GetCustomDrawingCoordinateSystem ( FMatrix & InMatrix, void * InData )


code: virtual bool GetCustomInputCoordinateSystem ( FMatrix & InMatrix, void * InData )


description: Compiles geometry mode information from the selected brushes.

code: virtual void GetFromSource()


code: [FGeomObjectPtr](API\Plugins\GeometryMode\FGeomObjectPtr) GetGeomObject ( int32 Index )


code: const [FGeomObjectPtr](API\Plugins\GeometryMode\FGeomObjectPtr) GetGeomObject ( int32 Index ) const


description: Returns the edges that are selected.

code: virtual void GetSelectedEdges ( [TArray](API\Runtime\Core\Containers\TArray)< [FGeomEdge](API\Plugins\GeometryMode\FGeomEdge) * > & InEdges ) const


description: Returns the polygons that are selected.

code: virtual void GetSelectedPolygons ( [TArray](API\Runtime\Core\Containers\TArray)< [FGeomPoly](API\Plugins\GeometryMode\FGeomPoly) * > & InPolygons ) const


description: Fills an array with all selected vertices.

code: virtual void GetSelectedVertices ( [TArray](API\Runtime\Core\Containers\TArray)< [FGeomVertex](API\Plugins\GeometryMode\FGeomVertex) * > & InVerts ) const


description: Returns a combination of the flags in ESelectionStatus.

code: virtual int32 GetSelectionState()


code: virtual FVector GetWidgetLocation() const


description: Returns true if the user has edges selected.

code: virtual bool HaveEdgesSelected()


description: Returns true if the user has polygons selected.

code: virtual bool HavePolygonsSelected()


description: Returns true if the user has vertices selected.

code: virtual bool HaveVerticesSelected()


className: HGeomMidPoints

description: Struct for cacheing of selected objects components midpoints for reselection when rebuilding the BSP

code: struct HGeomMidPoints

ActualBrush

type: ABrush*

description: The actor that the verts/edges/polys belong to

EdgePool

type: TArray< FVector...

VertexPool

description: Arrays of the midpoints of all the selected verts/edges/polys


code: virtual bool IsCompatibleWith ( FEditorModeID OtherModeID ) const


code: virtual void MapChangeNotify()


description: Draws translucent polygons on brushes and volumes.

code: virtual void Render ( const [FSceneView](API\Runtime\Engine\FSceneView) * View, [FViewport](API\Runtime\Engine\FViewport) * Viewport, [FPrimitiveDrawInterface](API\Runtime\Engine\FPrimitiveDrawInterface) * PDI )


code: void RenderEdge ( const [FSceneView](API\Runtime\Engine\FSceneView) * View, [FPrimitiveDrawInterface](API\Runtime\Engine\FPrimitiveDrawInterface) * PDI )


code: void RenderPoly ( const [FSceneView](API\Runtime\Engine\FSceneView) * View, [FViewport](API\Runtime\Engine\FViewport) * Viewport, [FPrimitiveDrawInterface](API\Runtime\Engine\FPrimitiveDrawInterface) * PDI )


code: void RenderVertex ( const [FSceneView](API\Runtime\Engine\FSceneView) * View, [FPrimitiveDrawInterface](API\Runtime\Engine\FPrimitiveDrawInterface) * PDI )


code: virtual void SelectionChanged()


description: Return true if successful

code: bool SelectCachedData ( [TArray](API\Runtime\Core\Containers\TArray)< [FGeomBase](API\Plugins\GeometryMode\FGeomBase) * > & raSelectedGeom ) const


description: Changes the source brushes to match the current geometry data.

code: virtual void SendToSource()


code: virtual bool ShouldDrawBrushWireframe ( [AActor](API\Runtime\Engine\GameFramework\AActor) * InActor ) const


code: void ShowModifierWindow ( bool bShouldShow )


code: virtual bool ShowModeWidgets() const


className: TGeomObjectIterator

code: typedef [TArray](API\Runtime\Core\Containers\TArray)< [FGeomObjectPtr](API\Plugins\GeometryMode\FGeomObjectPtr) >::TIterator TGeomObjectIterator


className: TGeomObjectConstIterator

code: typedef [TArray](API\Runtime\Core\Containers\TArray)< [FGeomObjectPtr](API\Plugins\GeometryMode\FGeomObjectPtr) >::TConstIterator TGeomObjectConstIterator


code: virtual void UpdateInternalData()


description: True if this mode uses a toolkit mode (eventually they all should)

code: virtual bool UsesToolkits() const


className: FEdModeGeometry

description: Allows for BSP geometry to be edited directly

code: class FEdModeGeometry : public [FEdMode](API\Editor\UnrealEd\FEdMode)

GeomObjects

type: TArray<FGeomOb...

description: Custom data compiled when this mode is entered, based on currently selected brushes.


description: Allows manual setting of the selection index. This is dangerous and should only be called by theFEdModeGeometry::PostUndo()function.

code: void ForceSelectionIndex ( int32 InSelectionIndex )


code: const FVector & GetMid() const


description: Returns a location that represents the middle of the object

code: FVector GetMidPoint() const


code: const FVector & GetNormal() const


code: const [FGeomObjectPtr](API\Plugins\GeometryMode\FGeomObjectPtr) GetParentObject() const


code: int32 GetParentObjectIndex() const


code: int32 GetSelectionIndex() const


description: Gets the local rotation to use when transforming this object

code: virtual FRotator GetWidgetRotation() const


description: Returns a valid position for the widget to be drawn at for this object

code: virtual FVector GetWidgetLocation()


description: Returns true if this geometry objects is a vertex.

code: virtual bool IsVertex() const


description: Does nothing if not in geometry mode.

code: virtual void Select ( bool InSelect )


code: void SetMid ( const FVector & InMid )


code: void SetNormal ( const FVector & InNormal )


code: void SetParentObjectIndex ( int32 InParentObjectIndex )


className: FGeomBase

description: Base class for all classes that support storing and editing of geometry.

code: class FGeomBase

Mid

type: FVector

description: The mid point for this object.

Normal

description: The normal vector for this object.

ParentObjectIndex

description: Allows polys, edges and vertices to point to theFGeomObjectthat owns them.


code: virtual FVector GetMidPoint() const


description: Returns true if InEdge matches this edge, independant of winding.

code: bool IsSameEdge ( const [FGeomEdge](API\Plugins\GeometryMode\FGeomEdge) & InEdge ) const


className: FGeomEdge

description: The space between 2 adjacent vertices.

code: class FGeomEdge : public [FGeomBase](API\Plugins\GeometryMode\FGeomBase)

ParentPolyIndices

type: TArray< int32 >

description: Indices into the parent poly pool.

VertexIndices

description: Indices into the parent vertex pool.


code: static FEditorModeID EM_Bsp = FEditorModeID(TEXT("EM_Bsp"));


code: static FEditorModeID EM_Geometry = FEditorModeID(TEXT("EM_Geometry"));


code: static FEditorModeID EM_TextureAlign = FEditorModeID(TEXT("EM_TextureAlign"));


className: FGeometryEditingModes

code: struct FGeometryEditingModes


description: Called before the module is unloaded, right before the module object is destroyed. During normal shutdown, this is called in reverse order that modules finishStartupModule(). This means that, as long as a module references dependent modules in it'sStartupModule(), it can safely reference those dependencies inShutdownModule()as well.

code: virtual void ShutdownModule()


description: FModuleManager::Get().LoadModuleChecked(TEXT("HTTP"));

code: virtual void StartupModule()


className: FGeometryModeModule

description: Geometry mode module

code: class FGeometryModeModule : public [IModuleInterface](API\Runtime\Core\Modules\IModuleInterface)


code: int32 AddEdgeToPool ( [FGeomPoly](API\Plugins\GeometryMode\FGeomPoly) * InPoly, int32 InParentPolyIndex, int32 InVectorIdxA, int32 InVectorIdxB )


description: Pure virtual that must be overloaded by the inheriting class. Use this method to serialize any UObjects contained that you wish to keep around.

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


code: int32 AddVertexToPool ( int32 InObjectIndex, int32 InParentPolyIndex, int32 InPolyIndex, int32 InVertexIndex )


description: Erases all current data for this object.

code: void ClearData()


code: void CompileSelectionOrder()


description: Recomputes data specific to the geometry data (i.e. normals, mid points, etc)

code: void ComputeData()


description: Compiles a list of unique edges. This runs through the edge pool and only adds edges into the pool that aren't already there (the difference being that this routine counts edges that share the same vertices, but are wound backwards to each other, as being equal).

code: void CompileUniqueEdgeArray ( [TArray](API\Runtime\Core\Containers\TArray)< [FGeomEdge](API\Plugins\GeometryMode\FGeomEdge) > * InEdges )


description: Dirties the selection order.

code: void DirtySelectionOrder()