The foot locking node handles the runtime logic for foot locking. Place it in your animation graph within your IK post processing chain before any IK nodes.
Node Setup
Step 1: Add a foot locking node in the post processing chain after pose synthesis is complete but before any IK nodes. Make sure it is after initialization and the motion snapshot node.
Step 2: Select the node and setup the limbs of your character in the settings panel. The foot locker node only supports two limbed humanoid characters. Settings are as follows:
Foot Bone - The bone that represents the foot of the limb. This is the bone that will be controlled with IK
Toe Bone - The bone representing the toe or ball of the foot. This is the bone that will be locked in place when the foot locker is active.
IK Target - the foot IK target. The foot locker will move this IK target in order to lock the foot and IK nodes further down the animation chain will apply the IK, moving the foot bone to this location.
Limb Bone Count - The number of bones in the IK limb. This is usually 2 but may be more. It is the number of bones between the foot bone and the thigh.
Step 3: Configure general settings. These are the settings that control how the foot locker node behaves when foot locking is at its limit as well as smoothing. The settings are explained below:
Leg Hyper Extension Fix Method - The method for fixing leg hyperextension caused by foot locking. There are two options described as follows:
Move Foot Towards Thigh - If hyper-extension occurs, the foot will be pushed directly toward the thigh until there is no longer any hyper-extension. Note that this will cause the foot to no longer be grounded which may or may not be desireable.
Move Foot Under Thigh - if hyper-extension occurs, the foot will be moved forward toward a point directly under the thigh of the character until hyper-extension no longer occurs. This essentially allows the foot to slide along the ground once the hyper-extension limit has been reached rather than destroying the pose.
Allow Leg Extension Ratio - It may not be desirable to allow the leg to extend all the way to the limit of hyper-extension. This setting allows control over this. It is a ratio between 0 and 1 which describes how much of the reaming possible extension of the leg is allowable. 0.0 means the leg cannot ever be extended, while 1 means it can be extended all the way to hyper-extension. For example, if the leg is bent at a 30 degree angle, a value of 0.5 will allow the leg to extend by 15 degrees.
Lock Release Smooth Time - The amount of time in seconds that smoothing will occur when a foot is first unlocked. Settings this to -1.0 will result in no smoothing and the lock being released instantly (not recommended).
Step 4: Bind foot locking inputs. These booleans specify at any point in time whether the foot should be locked or not. They can either be exposed as pins on the node or bound via other methods in the settings panel. How these booleans are controlled at runtime is irrelevant to the Foot Locker node itself. For more information on how to control these inputs see the Foot Locking Component and AnimNotifiers sections of this documentation.