Creating a Control rig For A Skeletal Mesh

From Unreal Wiki
Revision as of 05:47, 16 February 2025 by Unreal583 (talk | contribs)
Jump to navigation Jump to search

Note: we learned from this page: https://www.versluis.com/2024/03/creating-a-control-rig-from-scratch-in-unreal-engine/


A Control rig is a Design time control you create that you can interact with the bone
You are essential assigning this control and mapping it to a existing bone,
from there you can move this control as you would the bone


Step 1: Choose some bones , Drag them to the Graph and select Create Item Array

Step 2: With those Bones selected right Click New->Add Controls for Selected

Step 3: Expand the newly created controls if subcontrols were created
Here is a pic of the newly created controls unexpanded

And here is the same Controls expanded

Step 4: Drag the controls to the graph and select Create Item array

1. Foward Solve is setting the Bones Transform to the Control Rig Transform

Forward solve requires a 1:1 mapping and dragging and dropping the controls and bone arrays even if you selected them in the correct order won't typically have them match up, so you need to manually do it

If you see

Then you need to fix your mappings

2. Backward Solve is setting the Control Transform to the bone Transform (The reverse of Foward Solve)
Below are some quotes explaining why we need Backward Solve

UE needs a Backwards Solve to translate an animation into Control Rig information so we can adjust it.
-https://www.versluis.com/2024/03/creating-a-control-rig-from-scratch-in-unreal-engine/

you need the backward solve to bake the animation to control rig to have access to all the keyframes
-https://forums.unrealengine.com/t/cant-edit-animations-in-sequencer-because-cant-select-control-rig/756274


3. You won't use the skeletal mesh anymore but the control rig you created for it, you can drag this into the level or sequencer and use it as you would the skeletal mesh.


Bugs

1.If your getting compile errors Array index(1) out of bounds (count 4) than a possible fix is to close
the control rig editor window and reopen and recompiled.

I'm able to reproduce this bug if I Add a new Item array To a already existing and working forward/backward solve
Typically when I'm trying to add more bones and having to create new arrays

2. (Can't Edit The Control Rig, Controls Grey out)If you reference the Control rig in your level, than you can't edit the control rig, if you can't edit the control rig delete all references to the control rig, and

3.The Forward and backward Solve arrays require a 1:1 mapping of the bones, and for some reason control selecting them in order doesn't give a 1:1 order, you will typically have to manually set the 1:1 mappings yourself

Notes

At one point I thought I copied to many bones and it doesn't match the control array
however, the item array for the bones will always list all bones, and not just the ones copied

You can verify if you copied the right amount by matching the elements in the array