Navigation
API > API/Plugins > API/Plugins/ControlRig
Inheritance Hierarchy
References
| Module | ControlRig |
| Header | /Engine/Plugins/Animation/ControlRig/Source/ControlRig/Public/ControlRig.h |
| Include | #include "ControlRig.h" |
Syntax
UCLASS&40;Blueprintable, Abstract, EditInlineNew&41;
class UControlRig :
public URigVMHost,
public INodeMappingProviderInterface
Remarks
Runs logic for mapping input data to transforms (the "Rig")
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bCopyHierarchyBeforeConstruction | ||
| bool | bInteractionJustBegan | ||
| bool | bIsClearingTransientControls | ||
| bool | bManipulationEnabled | ||
| bool | bRecordSelectionPoseForConstructionMode | ||
| bool | bResetInitialTransformsBeforeConstruction | ||
| TArray< TObjectPtr< UAssetUserData > > | CombinedAssetUserData | ||
| TMap< FRigElementKey, FRigControlElementCustomization > | ControlCustomizations | ||
| int32 | ControlUndoBracketIndex | ||
| TObjectPtr< URigHierarchy > | DynamicHierarchy | ||
| TArray< FRigElementKey > | ElementsBeingInteracted | ||
| ERigExecutionType | ExecutionType | ||
| FRigHierarchySettings | HierarchySettings | ||
| int32 | InteractionBracket | ||
| uint8 | InteractionType | ||
| int32 | InterRigSyncBracket | ||
| TSharedPtr< IControlRigObjectBinding > | ObjectBinding | Runtime object binding | |
| FControlModifiedEvent | OnControlModified | ||
| FControlRigBoundEvent | OnControlRigBound | ||
| FControlSelectedEvent | OnControlSelected | ||
| FOnControlSelectedBP | OnControlSelected_BP | ||
| FControlUndoBracketEvent | OnControlUndoBracket | ||
| FFilterControlEvent | OnFilterControl | ||
| TWeakObjectPtr< USceneComponent > | OuterSceneComponent | ||
| int32 | PostConstructionBracket | ||
| int32 | PostForwardsSolveBracket | ||
| int32 | PreConstructionBracket | ||
| int32 | PreForwardsSolveBracket | ||
| TArray< FRigElementKey > | QueuedModifiedControls | ||
| TMap< FRigElementKey, FTransform > | SelectionPoseForConstructionMode | ||
| TArray< TSoftObjectPtr< UControlRigShapeLibrary > > | ShapeLibraries | ||
| TMap< FString, FString > | ShapeLibraryNameMap |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UControlRig
(
const FObjectInitializer& ObjectInitializer |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | ApplySelectionPoseForConstructionMode
(
const FName& InEventName |
||
| void | |||
| TArray< FRigControlElement * > | |||
| bool | |||
| FFilterControlEvent & | Returns a event that can be used to subscribe to filtering control data when needed | ||
| FControlModifiedEvent & | Returns a event that can be used to subscribe to change notifications coming from the manipulated subject. | ||
| FControlRigBoundEvent & | |||
| FControlSelectedEvent & | Returns a event that can be used to subscribe to selection changes coming from the manipulated subject. | ||
| FControlUndoBracketEvent & | Returns an event that can be used to subscribe to Undo Bracket requests such as Open and Close. | ||
| void | |||
| UTransformableControlHandle * | CreateTransformableControlHandle
(
UObject* Outer, |
Creates a transformable control handle for the specified control to be used by the constraints system. | |
| TArray< FName > | |||
| void | DeclareConstructClasses
(
TArray< FTopLevelAssetPath >& OutConstructClasses, |
||
| FRigControlElement * | FindControl
(
const FName& InControlName |
||
| TArray< UControlRig * > | FindControlRigs
(
UObject* Outer, |
||
| CURRENT_FILE_ID__LINE__DELEGATE | FUNC_DECLARE_DYNAMIC_MULTICAST_DELEGATE
(
FOnControlSelectedBP_MCSignature, |
To support Blueprints/scripting, we need a different delegate type (a 'Dynamic' delegate) which supports looser style UFunction binding (using names). | |
| FText | GetCategory () |
Get the category of this ControlRig (for display in menus) | |
| const FRigControlElementCustomization * | GetControlCustomization
(
const FRigElementKey& InControl |
||
| FTransform | GetControlGlobalTransform
(
const FName& InControlName |
||
| FTransform | GetControlLocalTransform
(
const FName& InControlName |
||
| void | GetControlsInOrder
(
TArray< FRigControlElement* >& SortedControls |
||
| bool | |||
| FRigControlValue | GetControlValue
(
const FName& InControlName |
Returns the value of a Control. | |
| FRigControlValue | GetControlValueFromGlobalTransform
(
const FName& InControlName, |
||
| UAnimationDataSourceRegistry * | Data Source Registry Getter | ||
| float | |||
| URigHierarchy * | GetHierarchy () |
||
| URigHierarchy * | GetHierarchy () |
||
| AActor * | Find the actor the rig is bound to, if any | ||
| UControlRig * | |||
| TSubclassOf< UControlRig > | |||
| uint8 | |||
| TSharedPtr< IControlRigObjectBinding > | |||
| const TArray< TSoftObjectPtr< UControlRigShapeLibrary > > & | |||
| FText | Get the tooltip text to display for this node (displayed in graphs and from context menus) | ||
| bool | |||
| bool | |||
| bool | IsControlSelected
(
const FName& InControlName |
||
| bool | IsCurveControl
(
const FRigControlElement* InControlElement |
||
| bool | |||
| bool | |||
| bool | |||
| bool | |||
| bool | Returns true if this manipulatable subject is currently available for manipulation / is enabled. | ||
| void | OnHierarchyTransformUndoRedo
(
URigHierarchy* InHierarchy, |
||
| void | OnHierarchyTransformUndoRedoWeak
(
URigHierarchy* InHierarchy, |
||
| FControlRigExecuteEvent & | |||
| FControlRigExecuteEvent & | |||
| FControlRigExecuteEvent & | |||
| FControlRigExecuteEvent & | |||
| FControlRigExecuteEvent & | |||
| FRigEventDelegate & | |||
| void | PostReinstanceCallback
(
const UControlRig* Old |
Called after post reinstance when compilng blueprint by Sequencer | |
| void | Requests to perform construction during the next execution | ||
| void | SelectControl
(
const FName& InControlName, |
||
| void | SetBoneInitialTransformsFromAnimInstance
(
UAnimInstance* InAnimInstance |
Setup the initial transform / ref pose of the bones based upon an anim instance This uses the current refpose instead of the RefSkeleton pose. | |
| void | SetBoneInitialTransformsFromAnimInstanceProxy
(
const FAnimInstanceProxy* InAnimInstanceProxy |
Setup the initial transform / ref pose of the bones based upon an anim instance proxy This uses the current refpose instead of the RefSkeleton pose. | |
| void | SetBoneInitialTransformsFromRefSkeleton
(
const FReferenceSkeleton& InReferenceSkeleton |
Setup the initial transforms / ref pose of the bones based on a reference skeleton This uses the RefSkeleton pose instead of the current refpose. | |
| void | SetBoneInitialTransformsFromSkeletalMesh
(
USkeletalMesh* InSkeletalMesh |
Setup the initial transforms / ref pose of the bones based on a skeletal mesh This uses the RefSkeleton pose instead of the current refpose. | |
| void | SetBoneInitialTransformsFromSkeletalMeshComponent
(
USkeletalMeshComponent* InSkelMeshComp, |
Setup the initial transform / ref pose of the bones based upon skeletal mesh component (ref skeleton) This uses the RefSkeleton pose instead of the current refpose (or vice versae is bUseAnimInstance == true) | |
| void | SetControlCustomization
(
const FRigElementKey& InControl, |
||
| bool | SetControlGlobalTransform
(
const FName& InControlName, |
||
| void | SetControlLocalTransform
(
const FName& InControlName, |
||
| void | SetControlsVisible
(
const bool bIsVisible |
||
| void | SetControlValue
(
const FName& InControlName, |
Sets the relative value of a Control. | |
| void | SetControlValueImpl
(
const FName& InControlName, |
Sets the relative value of a Control. | |
| void | SetInteractionRig
(
UControlRig* InInteractionRig |
||
| void | SetInteractionRigClass
(
TSubclassOf< UControlRig > InInteractionRigClass |
||
| bool | SetManipulationEnabled
(
bool Enabled |
Sets the manipulatable subject to enabled or disabled. | |
| void | SetObjectBinding
(
TSharedPtr< IControlRigObjectBinding > InObjectBinding |
Setup bindings to a runtime object (or clear by passing in nullptr). | |
| FTransform | SetupControlFromGlobalTransform
(
const FName& InControlName, |
||
| bool | |||
| void |
Overridden from URigVMHost
| Type | Name | Description | |
|---|---|---|---|
| void | AdaptEventQueueForEvaluate
(
TArray< FName >& InOutEventQueueToRun |
Provides the chance to a subclass to modify the event queue as needed | |
| bool | Execute | ||
| bool | Execute_Internal
(
const FName& InEventName |
ExecuteUnits | |
| USceneComponent * | |||
| UScriptStruct * | Returns the public context script struct to use for this owner | ||
| UWorld * | GetWorld () |
UObject interface | |
| void | Initialize
(
bool bInitRigUnits |
Initialize things for the ControlRig | |
| bool | InitializeVM
(
const FName& InEventName |
Initialize the VM | |
| void | PostInitInstance
(
URigVMHost* InCDO |
||
| void | |||
| void | RequestInit () |
Requests to perform an init during the next execution |
Overridden from UObject
| Type | Name | Description | |
|---|---|---|---|
| void | BeginDestroy () |
Called before destroying the object. | |
| 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 | PreEditChange
(
FProperty* PropertyAboutToChange |
This is called when a property is about to be modified externally | |
| void | Handles reading, writing, and reference collecting using FArchive. |
Overridden from IInterface_AssetUserData
| Type | Name | Description | |
|---|---|---|---|
| const TArray< UAssetUserData * > * |
Overridden from INodeMappingProviderInterface
| Type | Name | Description | |
|---|---|---|---|
| void | GetMappableNodeData
(
TArray< FName >& OutNames, |
INodeMappingInterface implementation |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FAnimAttributeContainerPtrScope | |||
| FControlModifiedEvent | Bindable event for external objects to be notified of Control changes | ||
| FControlRigBoundEvent | Bindable event to notify object binding change. | ||
| FControlRigExecuteEvent | |||
| FControlSelectedEvent | Bindable event for external objects to be notified that a Control is Selected | ||
| FControlUndoBracketEvent | Bindable event to manage undo / redo brackets in the client | ||
| FFilterControlEvent | Bindable event for external objects to contribute to / filter a control value | ||
| FOnControlSelectedBP | |||
| FTransientControlPoseScope | Class used to temporarily cache current pose of transient controls restore them after a ResetPoseToInitial call, which allows user to move bones in construction mode |
Constants
| Name | Description |
|---|---|
| OwnerComponent |
Deprecated Variables
| Type | Name | Description | |
|---|---|---|---|
| TSoftObjectPtr< UControlRigShapeLibrary > | GizmoLibrary_DEPRECATED | ||
| TMap< FName, FCachedPropertyPath > | InputProperties_DEPRECATED | You either go Input or Output, currently if you put it in both place, Output will override | |
| TMap< FName, FCachedPropertyPath > | OutputProperties_DEPRECATED |