Navigation
API > API/Plugins > API/Plugins/ControlRig
Inheritance Hierarchy
- UObjectBase
- UObjectBaseUtility
- UObject
- UActorComponent
- USceneComponent
- UPrimitiveComponent
- UControlRigComponent
References
| Module | ControlRig |
| Header | /Engine/Plugins/Animation/ControlRig/Source/ControlRig/Public/ControlRigComponent.h |
| Include | #include "ControlRigComponent.h" |
Syntax
UCLASS&40;Blueprintable, ClassGroup&61;"Animation", Meta&61;&40;BlueprintSpawnableComponent&41;&41;
class UControlRigComponent : public UPrimitiveComponent
Remarks
A component that hosts an animation ControlRig, manages control components and marshals data between the two
Variables
| Type | Name | Description | |
|---|---|---|---|
| bool | bDrawBones | When checked the rig's bones are drawn using debug drawing similar to the animation editor viewport | |
| bool | bEnableLazyEvaluation | When checked the rig will only run if any of the mapped inputs has changed | |
| bool | bResetInitialsBeforeConstruction | When checked the initial transforms on bones, nulls and controls are reset prior to a construction event | |
| bool | bResetTransformBeforeTick | When checked the transforms are reset before a tick / update of the rig | |
| bool | bShowDebugDrawing | When checked the rig's debug drawing instructions are drawn in the viewport | |
| bool | bUpdateInEditor | When checked the rig is run in the editor viewport without running / simulation the game | |
| bool | bUpdateRigOnTick | When checked this ensures to run the rig's update on the component's tick automatically | |
| TSubclassOf< UControlRig > | ControlRigClass | The class of control rig to instantiate | |
| float | LazyEvaluationPositionThreshold | The delta threshold for a translation / position difference. 0.0 disables position differences. | |
| float | LazyEvaluationRotationThreshold | The delta threshold for a rotation difference (in degrees). 0.0 disables rotation differences. | |
| float | LazyEvaluationScaleThreshold | The delta threshold for a scale difference. 0.0 disables scale differences. | |
| TArray< FControlRigComponentMappedElement > | MappedElements | ||
| FControlRigComponentDelegate | OnPostConstructionDelegate | Event fired after this component's ControlRig is setup | |
| FControlRigComponentDelegate | OnPostForwardsSolveDelegate | Event fired after this component's ControlRig's forwards solve | |
| FControlRigComponentDelegate | OnPostInitializeDelegate | Event fired after this component's ControlRig is initialized | |
| FControlRigComponentDelegate | OnPreConstructionDelegate | Event fired before this component's ControlRig is setup | |
| FControlRigComponentDelegate | OnPreForwardsSolveDelegate | Event fired before this component's ControlRig's forwards solve | |
| FControlRigComponentDelegate | OnPreInitializeDelegate | Event fired just before this component's ControlRig is initialized | |
| TArray< FControlRigComponentMappedElement > | UserDefinedElements |
Constructors
| Type | Name | Description | |
|---|---|---|---|
UControlRigComponent
(
const FObjectInitializer& ObjectInitializer |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | AddMappedCompleteSkeletalMesh
(
USkeletalMeshComponent* SkeletalMeshComponent |
Adds all matching bones to the rig, should not be used before OnPreInitialize Event | |
| void | AddMappedComponents
(
TArray< FControlRigComponentMappedComponent > Components |
Adds a series of mapped bones to the rig, should not be used before OnPreInitialize Event | |
| void | AddMappedElements
(
TArray< FControlRigComponentMappedElement > NewMappedElements |
Adds the provided mapped elements to the component, should not be used before OnPreInitialize Event | |
| void | AddMappedSkeletalMesh
(
USkeletalMeshComponent* SkeletalMeshComponent, |
Adds a series of mapped bones to the rig, should not be used before OnPreInitialize Event | |
| bool | CanExecute () |
Returns true if the Component can execute its Control Rig | |
| void | Removes all mapped elements from the component | ||
| bool | DoesElementExist
(
FName Name, |
Returns true if an element given a type and name exists in the rig | |
| float | Get the ControlRig's local time in seconds since its last initialize | ||
| FTransform | GetBoneTransform
(
FName BoneName, |
Returns the transform of the bone in the requested space | |
| bool | GetControlBool
(
FName ControlName |
Returns the value of a bool control | |
| float | GetControlFloat
(
FName ControlName |
Returns the value of a float control | |
| int32 | GetControlInt
(
FName ControlName |
Returns the value of an integer control | |
| FTransform | GetControlOffset
(
FName ControlName, |
Returns the offset transform of a control | |
| FVector | GetControlPosition
(
FName ControlName, |
Returns the value of a position control | |
| UControlRig * | Get the ControlRig hosted by this component | ||
| FRotator | GetControlRotator
(
FName ControlName, |
Returns the value of a rotator control | |
| FVector | GetControlScale
(
FName ControlName, |
Returns the value of a scale control | |
| FTransform | GetControlTransform
(
FName ControlName, |
Returns the value of a transform control | |
| FVector2D | GetControlVector2D
(
FName ControlName |
Returns the value of a Vector3D control | |
| TArray< FName > | GetElementNames
(
ERigElementType ElementType |
Returns all of the names for a given element type (Bone, Control, etc) | |
| FTransform | GetInitialBoneTransform
(
FName BoneName, |
Returns the initial transform of the bone in the requested space | |
| FTransform | GetInitialSpaceTransform
(
FName SpaceName, |
Returns the initial transform of the space in the requested space | |
| FTransform | GetSpaceTransform
(
FName SpaceName, |
Returns the transform of the space in the requested space | |
| void | Initialize () |
Initializes the rig's memory and calls the construction event | |
| FControlRigComponentEvent & | |||
| void | OnPostConstruction
(
UControlRigComponent* Component |
||
| void | OnPostForwardsSolve
(
UControlRigComponent* Component |
||
| void | OnPostInitialize
(
UControlRigComponent* Component |
||
| void | OnPreConstruction
(
UControlRigComponent* Component |
||
| void | OnPreForwardsSolve
(
UControlRigComponent* Component |
||
| void | OnPreInitialize
(
UControlRigComponent* Component |
||
| void | SetBoneInitialTransformsFromSkeletalMesh
(
USkeletalMesh* InSkeletalMesh |
Setup the initial transforms / ref pose of the bones based on a skeletal mesh | |
| void | SetBoneTransform
(
FName BoneName, |
Sets the transform of the bone in the requested space | |
| void | SetControlBool
(
FName ControlName, |
Sets the value of a bool control | |
| void | SetControlFloat
(
FName ControlName, |
Sets the value of a float control | |
| void | SetControlInt
(
FName ControlName, |
Sets the value of an integer control | |
| void | SetControlOffset
(
FName ControlName, |
Sets the offset transform of a control | |
| void | SetControlPosition
(
FName ControlName, |
Sets the value of a position control | |
| void | SetControlRig
(
UControlRig* ControlRig |
||
| void | SetControlRigClass
(
TSubclassOf< UControlRig > InControlRigClass |
||
| void | SetControlRotator
(
FName ControlName, |
Sets the value of a rotator control | |
| void | SetControlScale
(
FName ControlName, |
Sets the value of a scale control | |
| void | SetControlTransform
(
FName ControlName, |
Sets the value of a transform control | |
| void | SetControlVector2D
(
FName ControlName, |
Sets the value of a vector2D control | |
| void | SetInitialBoneTransform
(
FName BoneName, |
Sets the initial transform of the bone in the requested space | |
| void | SetInitialSpaceTransform
(
FName SpaceName, |
Sets the transform of the space in the requested space | |
| void | SetMappedElements
(
TArray< FControlRigComponentMappedElement > NewMappedElements |
Replaces the mapped elements on the component with the provided array, should not be used before OnPreInitialize Event | |
| void | SetObjectBinding
(
UObject* InObjectToBind |
||
| void | Update
(
float DeltaTime |
Updates and ticks the rig. |
Overridden from UPrimitiveComponent
| Type | Name | Description | |
|---|---|---|---|
| FPrimitiveSceneProxy * | Creates a proxy to represent the primitive to the scene manager in the rendering thread. |
Overridden from USceneComponent
| Type | Name | Description | |
|---|---|---|---|
| FBoxSphereBounds | CalcBounds
(
const FTransform& LocalToWorld |
Calculate the bounds of the component. Default behavior is a bounding box/sphere of zero size. |
Overridden from UActorComponent
| Type | Name | Description | |
|---|---|---|---|
| void | OnRegister () |
Called when a component is registered, after Scene is set, but before CreateRenderState_Concurrent or OnCreatePhysicsState are called. | |
| void | OnUnregister () |
Called when a component is unregistered. | |
| void | TickComponent
(
float DeltaTime, |
Function called every frame on this ActorComponent. |
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 | Handles reading, writing, and reference collecting using FArchive. |
Classes
| Type | Name | Description | |
|---|---|---|---|
| FControlRigComponentEvent |
Constants
| Name | Description |
|---|---|
| EditorNotifications |