Navigation
API > API/Plugins > API/Plugins/OptimusCore
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UMeshDeformer
- UOptimusDeformer
References
Module | OptimusCore |
Header | /Engine/Plugins/Animation/DeformerGraph/Source/OptimusCore/Public/OptimusDeformer.h |
Include | #include "OptimusDeformer.h" |
Syntax
UCLASS&40;Blueprintable, BlueprintType&41;
class UOptimusDeformer :
public UMeshDeformer,
public IInterface_PreviewMeshProvider,
public IOptimusPathResolver,
public IOptimusNodeGraphCollectionOwner,
public IOptimusNodeFunctionLibraryOwner
Remarks
A Deformer Graph is an asset that is used to create and control custom deformations on skeletal meshes.
Variables
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
TArray< FOptimusComputeGraphInfo > | ComputeGraphs | The compute graphs to execute. |
![]() ![]() ![]() |
TObjectPtr< USkeletalMesh > | Mesh |
Constructors
Type | Name | Description | |
---|---|---|---|
![]() |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
UOptimusComponentSourceBinding * | AddComponentBinding
(
const UOptimusComponentSource* InComponentSource, |
Component Bindings. |
![]() |
bool | AddComponentBindingDirect
(
UOptimusComponentSourceBinding* InComponentBinding, |
|
![]() |
UOptimusResourceDescription * | AddResource
(
FOptimusDataTypeRef InDataTypeRef, |
Resources. |
![]() |
bool | AddResourceDirect
(
UOptimusResourceDescription* InResourceDesc, |
Adds a resource that was created by this deformer and is owned by it. |
![]() |
UOptimusNodeGraph * | Add a setup graph. | |
![]() |
UOptimusNodeGraph * | AddTriggerGraph
(
const FString& InName |
Add a trigger graph. |
![]() |
UOptimusVariableDescription * | AddVariable
(
FOptimusDataTypeRef InDataTypeRef, |
Variables. |
![]() |
bool | AddVariableDirect
(
UOptimusVariableDescription* InVariableDesc, |
Adds a resource that was created by this deformer and is owned by it. |
![]() |
bool | Compile () |
Graph compilation. |
![]() |
UOptimusComponentSourceBinding * | CreateComponentBindingDirect
(
const UOptimusComponentSource* InComponentSource, |
|
![]() |
UOptimusNodeGraph * | CreateGraph
(
EOptimusNodeGraphType InType, |
|
![]() |
UOptimusResourceDescription * | CreateResourceDirect
(
FName InName |
Create a resource owned by this deformer but does not add it to the list of known resources. |
![]() |
UOptimusVariableDescription * | CreateVariableDirect
(
FName InName |
Create a resource owned by this deformer but does not add it to the list of known resources. |
![]() |
UOptimusActionStack * | Get the action stack for this deformer graph | |
![]() |
FOptimusCompileBegin & | Returns a multicast delegate that can be subscribed to listen for the start of compilation. | |
![]() |
FOptimusCompileEnd & | Returns a multicast delegate that can be subscribed to listen for the end of compilation but before shader compilation is complete. | |
![]() |
FOptimusGraphCompileMessageDelegate & | Returns a multicast delegate that can be subscribed to listen compilation results. | |
![]() ![]() ![]() ![]() |
const TArray< UOptimusComponentSourceBinding * > & | ||
![]() ![]() |
TArray< UOptimusNode * > | GetNodesUsingComponentBinding
(
const UOptimusComponentSourceBinding* InBinding |
|
![]() ![]() |
TArray< UOptimusNode * > | GetNodesUsingResource
(
const UOptimusResourceDescription* InResourceDesc |
|
![]() ![]() |
TArray< UOptimusNode * > | GetNodesUsingVariable
(
const UOptimusVariableDescription* InVariableDesc |
|
![]() |
FOptimusGlobalNotifyDelegate & | Returns the global delegate used to notify on global operations (e.g. graph, variable, resource lifecycle events). | |
![]() ![]() ![]() ![]() |
const TArray< UOptimusResourceDescription * > & | GetResources () |
|
![]() ![]() |
EOptimusDeformerStatus | GetStatus () |
Returns the current compilation/error status of the deformer |
![]() ![]() |
UOptimusNodeGraph * | Returns the update graph. The update graph will always exist, and there is only one. | |
![]() ![]() ![]() ![]() |
const TArray< UOptimusVariableDescription * > & | GetVariables () |
|
![]() |
void | MarkModified () |
Mark the deformer as modified. |
![]() ![]() |
void | Notify
(
EOptimusGlobalNotifyType InNotifyType, |
|
![]() |
bool | RemoveComponentBinding
(
UOptimusComponentSourceBinding* InBinding |
|
![]() |
bool | RemoveComponentBindingDirect
(
UOptimusComponentSourceBinding* InBinding |
|
![]() |
bool | RemoveGraph
(
UOptimusNodeGraph* InGraph |
Remove a graph and delete it. |
![]() |
bool | RemoveResource
(
UOptimusResourceDescription* InResourceDesc |
|
![]() |
bool | RemoveResourceDirect
(
UOptimusResourceDescription* InResourceDesc |
|
![]() |
bool | RemoveVariable
(
UOptimusVariableDescription* InVariableDesc |
|
![]() |
bool | RemoveVariableDirect
(
UOptimusVariableDescription* InVariableDesc |
|
![]() |
bool | RenameComponentBinding
(
UOptimusComponentSourceBinding* InBinding, |
|
![]() |
bool | RenameComponentBindingDirect
(
UOptimusComponentSourceBinding* InBinding, |
|
![]() |
bool | RenameResource
(
UOptimusResourceDescription* InResourceDesc, |
|
![]() |
bool | RenameResourceDirect
(
UOptimusResourceDescription* InResourceDesc, |
|
![]() |
bool | RenameVariable
(
UOptimusVariableDescription* InVariableDesc, |
|
![]() |
bool | RenameVariableDirect
(
UOptimusVariableDescription* InVariableDesc, |
|
![]() ![]() |
void | SetAllInstancesCanbeActive
(
bool bInCanBeActive |
|
![]() |
bool | SetComponentBindingSource
(
UOptimusComponentSourceBinding* InBinding, |
|
![]() |
bool | SetComponentBindingSourceDirect
(
UOptimusComponentSourceBinding* InBinding, |
|
![]() |
bool | SetResourceDataDomain
(
UOptimusResourceDescription* InResourceDesc, |
|
![]() |
bool | SetResourceDataDomainDirect
(
UOptimusResourceDescription* InResourceDesc, |
|
![]() |
bool | SetResourceDataType
(
UOptimusResourceDescription* InResourceDesc, |
|
![]() |
bool | SetResourceDataTypeDirect
(
UOptimusResourceDescription* InResourceDesc, |
|
![]() |
void | SetStatusFromDiagnostic
(
EOptimusDiagnosticLevel InDiagnosticLevel |
|
![]() |
bool | SetVariableDataType
(
UOptimusVariableDescription* InVariableDesc, |
|
![]() |
bool | SetVariableDataTypeDirect
(
UOptimusVariableDescription* InResourceDesc, |
Overridden from UMeshDeformer
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
UMeshDeformerInstance * | CreateInstance
(
UMeshComponent* InMeshComponent, |
Create an instance of the mesh deformer. |
![]() ![]() |
UMeshDeformerInstanceSettings * | CreateSettingsInstance
(
UMeshComponent* InMeshComponent |
Create persistent settings for the mesh deformer instance |
Overridden from UObject
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
void | BeginDestroy () |
Called before destroying the object. |
![]() ![]() ![]() |
void | GetAssetRegistryTags
(
TArray< FAssetRegistryTag >& OutTags |
Gathers a list of asset registry searchable tags which are name/value pairs with some type information This only needs to be implemented for asset objects |
![]() ![]() |
void | PostEditChangeProperty
(
FPropertyChangedEvent& PropertyChangedEvent |
Called when a property on this object has been modified externally |
![]() ![]() |
void | PostLoad () |
Do any object-specific cleanup required immediately after loading an object. |
![]() ![]() |
void | PostRename
(
UObject* OldOuter, |
Whenever the asset is renamed/moved, generated classes parented to the old package are not moved to the new package automatically (see FAssetRenameManager), so we have to manually perform the move/rename, to avoid invalid reference to the old package |
![]() ![]() |
void | UObject overrides. |
Overridden from IInterface_PreviewMeshProvider
Type | Name | Description | |
---|---|---|---|
![]() ![]() ![]() |
USkeletalMesh * | Get the preview mesh for this asset | |
![]() ![]() |
void | SetPreviewMesh
(
USkeletalMesh* PreviewMesh, |
Set the preview mesh for this asset |
Overridden from IOptimusPathResolver
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
IOptimusNodeGraphCollectionOwner * | ResolveCollectionPath
(
const FString& InPath |
Takes a collection path string and attempts to resolve it to a specific graph collection. |
![]() ![]() ![]() |
UOptimusComponentSourceBinding * | ResolveComponentBinding
(
FName InBindingName |
|
![]() ![]() |
UOptimusNodeGraph * | ResolveGraphPath
(
const FString& InPath |
Takes a graph path string and attempts to resolve it to a specific graph |
![]() ![]() |
UOptimusNode * | ResolveNodePath
(
const FString& InPath |
Takes a node path string and attempts to resolve it to a specific node |
![]() ![]() |
UOptimusNodePin * | ResolvePinPath
(
const FString& InPinPath |
Takes a dot-separated path string and attempts to resolve it to a specific pin on a node. |
![]() ![]() ![]() |
UOptimusResourceDescription * | ResolveResource
(
FName InResourceName |
|
![]() ![]() ![]() |
UOptimusVariableDescription * | ResolveVariable
(
FName InVariableName |
Overridden from IOptimusNodeGraphCollectionOwner
Type | Name | Description | |
---|---|---|---|
![]() ![]() |
bool | AddGraph
(
UOptimusNodeGraph* InGraph, |
Takes an existing graph and adds it to this graph collection. If the graph cannot be added, the object remains unchanged and this function returns false. |
![]() ![]() |
UOptimusNodeGraph * | CreateGraph
(
EOptimusNodeGraphType InType, |
Create a new graph of a given type, with an optional name. |
![]() ![]() ![]() |
IOptimusNodeGraphCollectionOwner * | Returns the collection that owns this collection, or nullptr if this is the root collection | |
![]() ![]() ![]() |
FString | Returns the path to this graph collection owner. | |
![]() ![]() ![]() |
IOptimusNodeGraphCollectionOwner * | Returns root collection that owns all the collections | |
![]() ![]() ![]() |
const TArray< UOptimusNodeGraph * > & | GetGraphs () |
Returns all immediately owned node graphs. |
![]() ![]() |
bool | MoveGraph
(
UOptimusNodeGraph* InGraph, |
Re-order the graph relative to the other graphs. |
![]() ![]() |
bool | RemoveGraph
(
UOptimusNodeGraph* InGraph, |
Remove the given graph. |
![]() ![]() |
bool | RenameGraph
(
UOptimusNodeGraph* InGraph, |
Rename the given graph, subject to validation of the name. |