Navigation
Unreal Engine C++ API Reference > 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 |