Control Rig Component

An overview of the Control Rig Component for Blueprints

Windows
MacOS
Linux

Control Rig can now be called in Blueprint through the Control Rig Component. Control Rig data can be accessed from Blueprints with the Control Rig Component. This enables you to drive Control Rigs with gameplay logic in Blueprints, reinitialize Control Rigs to fit differently proportioned characters, and read/write other Control Rig data directly. Additionally, you can use this Component to attach non-skeletal mesh objects to the Control Rig hierarchy with Accessors in the Control Rig Component.

image alt text

In the Details panel, the Control Rig Component has a similar appearance to Skeletal Mesh Component. Instead of the Mesh category, it has a Control Rig category with a Control Rig Class.

image alt text

Control Rig Setup Event

The Setup Event is an execution node used for initializations and control setups.

image alt text

Use the Setup Event dropdown to define where the controls are located before additional solves.

image alt text

Switching the toggle from Forward Solve to Setup Event provides a visual validation that the Setup Event Graph is working correctly.

Events

Control Rig can call the following events from the Control Rig Component.

image alt text

On Post Initialize

image alt text

This event gets called after the Component's Control Rig is initialized. This event can be used to set transforms or additional variables in Control Rig before Control Rig Component is initialized.

On Pre Setup

image alt text

This event gets called before the Setup Event of the Component's Control Rig. This event can be used for setting transforms or additional variables in Control Rig before Control Rig's Setup Event.

On Post Setup

image alt text

This event gets called after the Setup Event of the Component's Control Rig. This event can be used for setting transforms or additional variables in Control Rig after Control Rig Setup Event.

On Pre Forwards Solve

image alt text

This event gets called before the Forward Solve of the Component's Control Rig. This event can be used for setting transforms or additional variables in Control Rig before its Forwards Solve.

On Post Forwards Solve

image alt text

This event gets called after the Forward Solve of the Component's Control Rig. This event can be used for setting transforms or additional variables in Control Rig after its Forwards Solve.

Mapping and Connecting Control Rig

Manually Connecting within the Details Panel

Control Rig Component gives you the ability to add additional elements, such as adding bones to or using an additional skeletal mesh with a Control Rig. Use this workflow to share rigs between different skeletal meshes and also using Control Rig for Static Meshes.

In the Details panel, under the Animation section, the Control Rig Component has a Mapped Elements array.

image alt text

By clicking the + button, you can manually add information to map and connect elements to the Control Rig.

image alt text

Setting

Description

Component Reference

Allows you to choose a specific Component from a given Actor by component name. If the Control Rig Component is in an Actor based Blueprint, it defaults to Self as the Referenced Actor.

Transform Index

An optional index value for Components with multiple transforms.

Transform Name

An optional name value for Components with multiple individualized transforms names, such as sockets in skeletal meshes.

Element Type

The Rig Element type in Control Rig that the Component is an input or output of.

Element Name

The Rig Element name in Control Rig that the Component is an input or output of.

Direction

Determine whether or not the given Component is the driver or the driven to Control Rig.

Offset

The offset transform that should be given for the element.

Weight

The factor of which element should be affected. 1.0 is the default.

Space

The Rig Space that the Component is applied to.

Dynamically Connecting within Blueprints

Control Rig Component also provides the ability to dynamically add additional elements to a Control Rig. Ideally, map new elements to Control Rig with the Construction Script of the Blueprint Actor. These all add to the existing Mapped Elements variable in the Animation Details Panel.

Add Mapped Skeletal Mesh

This node takes a Skeletal Mesh Component and maps the bones of the Skeletal Mesh to the Preview Mesh in the Control Rig used in the Control Rig Component. This is a Skeletal Mesh to Skeletal Mesh mapping link.

Add Mapped Skeletal Mesh Bone Array

This node takes a Skeletal Mesh Component and an array of ControlRigComponentMappedBones and an array of ControlRigComponentMappedCurves and remaps the given source to the target of the Control Rig used in the Control Rig Component. The source names of the bones and curves are referenced from the given Skeletal Mesh component.

ControlRigComponentMappedBone and ControlRigComponentMappedCurve are structs that take a source name to a target name and map the bones and curves to the Control Rig.

Add Mapped Components

image alt text

This node takes an array of ControlRigComponentMappedComponent and maps the given component into the Rig Hierarchy of the Control Rig used in the Control Rig Component.

ControlRigComponentMappedComponent is a struct that takes a Component, element name, element type, and direction and adds the given element type with the names in mind to Control Rig.

Add Mapped Elements

image alt text

This node takes an array of ControlRigComponentMappedElement and maps the given element into the Rig Hierarchy of the Control Rig used in the Control Rig Component.

ControlRigComponentMappedElement is a struct that takes a Component, transform name, element type, direction, and transform, and adds the desired element type with the names in mind to Control Rig. This format is the same as the one used when Manually Connecting within the Details Panel.

Help shape the future of Unreal Engine documentation! Tell us how we're doing so we can serve you better.
Take our survey
Dismiss