How to
- How To:
- Show the Controller (if you cant see it)
- Make sure that the control Shape > Visible is enabled (in the details panel with the control selected)
- That the Hide the Control Shape is not active. You can do this by pressing the keyboard shortcut T to toggle this state.
- I have not found a UI button to toggle this inside the Control Rig asset
- But if you have the Animation mode active in the main viewport and the animation tab open you can see that the Hide Control Shapes is beeing toggled by the T shortcut. You can also use the UI in the animation tab to set the visibility.
- Change the size of a control
- Make sure that the control is selected in the Rig Hierarchy
- In the Details panel under Shape > Shape Transform Click the padlock to enable uniform scale and click and drag the scale of either scale component to a size that matches the rig geo.
- Change the rotation of a control
- Set the Shape > Shape Transform > Rotator to what you need
- Change the Shape
- Select a control shape you like in the details panel > Shape > Shape Properties > Shape
- Show the Controller (if you cant see it)
Basic Control Rig
Some notes on how to setup a basic Control Rig in UE5. Below are some basic assets to use while testing.
Assets
Setup
- Import a skeleton
- Lets use the “4_cubes_rig_01.fbx” as example file
- Import the fbx in Unreal
- Make sure that Convert Scene is enabled
- This converts the fbx coorsibate system to unreak coordinate system
- I just used the default settings, and ignored the warnings :)…
will look into this at a later time.
- Make sure that Convert Scene is enabled
- Create a Control Rig
- On the Skeletal Mesh RMB > Create Control Rig
- Double click to open up the graph
- On the Skeletal Mesh RMB > Create Control Rig
- Create a Controller
- In the Rig Hierarchy On the root joint RMB > New > New Control (Ctrl + N)
- With the new control root_ctrl selected, unparent by pressing (Shift + P) or by click and dragging the ctrl to an empty space of the Rig Hierarchy.
- Set the size, rotation and shape as described in the How To section above
- Click and drag the root_ctrl from the Rig Hierarchy and release on the Rig VM grap from the popup > Get Control
- Drive Joint with Controller
- Click and drag the root bone to the graph > Set Bone
- Drag the Execute pin from the Forwards Solve node and connect to the Execute Context input pin of the Set Transform - Bone
- Click the arrow of the Transform output pin of the Get Transform - Control node to expose the individual transform outputs.
- Expand the Value input pin of the Set Transform - Bone to expose the individual transform inputs.
- Drag the Translation output pin (control node) and connect to the Translation input pin (Bone node)
- Drag the Rotation output pin (control node) and connect to the Rotation input pin (Bone node)
- We could use the Transform…
- …but if we do it this way we can insert a Verlet node to jiggle the translation…
- …or use a Spring Imterpolate (Quaternion) to add a spring rotation offset.
Basic IK Rig
Some notes on how to setup a basic Ik Rig in UE5. Below are some basic assets to use while testing.
Assets
Setup
- Import a skeleton
- Lets use the “simple_ik_rig.fbx” as example file
- Import the fbx in Unreal
- Make sure that Convert Scene is enabled
- This converts the fbx coorsibate system to unreak coordinate system
- I just used the default settings, and ignored the warnings :)…
will look into this at a later time.
- Make sure that Convert Scene is enabled
- Create a Control Rig
- On the Skeletal Mesh RMB > Create Control Rig
- Double click to open up the graph
- On the Skeletal Mesh RMB > Create Control Rig
- Create a Hand Controller
- In the Rig Hierarchy On the “hand_L” joint RMB > New > New Control (Ctrl + N)
- Unparent the controller (drag to empty rig hierarchy space or Ctrl + P)
- Set the size, rotation and shape as described in the How To section above
- Since we wanted the transform of the control to be aligned with the hand, we created it by clicking on the hand joint.
- But we want it to be positioned at the location of the wrist.
- In the 3D vieport (of the control rig editor) drag the hand control so that it is close to the wrist joint. Then RMB the viewport > Set Offset Transform from Closest Bone
- Create a Pole Vector Controller
- In the Rig Hierarchy On the “elbow_L” joint RMB > New > New Control (Ctrl + N)
- Unparent the controller (drag to empty rig hierarchy space or Ctrl + P)
- Set the size, rotation and shape as described in the How To section above
- Give it the name “PV_ctrl”
- In the 3D vieport (of the control rig editor) drag the pv control so that it is outside the elbow bone. Then RMB the viewport > Set Offset Transform from Current
- Create a Basic IK Setup
- Basic IK node
- In the rig graph Tab > start typing “ik…” select Hierarchy > Basic IK
- On the Basic IK node
- set Item > Name > shoulder_L
- set Item > Name > elbow_L
- set Item > Name > wrist_L
- Set the IK Control
- Drag the hand_L_ctrl (from the rig hierarchy) and drop in the graph > Get control
- Connect the Transform output pin from the controller and connect to the Effector input pin of the Basic IK node
- Set the Pole Vector Control
- Drag the pv_ctrl (from the rig hierarchy) and drop in the graph > Get control
- Expand the Transform output pin of the pv control to expose the Translation vector pin
- Connect it to the Pole Vector input of the Basic IK node
- Solve the IK
- From the Execute output pin of the Forwards Solve node, connect it to the Execute input pin of the Basic IK node
- Press Compile & save
- Basic IK node
Constraints
- Todo