Download

How to share 1 animation between 2 skeletons

I have 2 skeletons

  1. “Woman” (with 100 animation)
  2. “Woman on heels” (copied from “Woman” with no animations)
    The difference is only in slightly 2 shifted bones.
    I know that i can use retargeting and retarget all 100 animations to “Woman on heels” skeleton.
    So, it will be “woman_idle” and “woman_idle_on_heels”. (So resulting 200 animations).
    But my game logic suppose use certain animations in certain cases, so it’s quite annoying to choose which animation use in which case.

My question is:
“How to use 1 animation for 2 skeletons, without retargeting” ?

You simply make them use the same skeleton asset. They need to have the same general structure and same bone names, but proportions don’t need to match. Read this for all the info: Skeleton Assets | Unreal Engine Documentation. This will allow them to share the same animation assets. You can set the skeleton either on import or in the skeletal mesh after import.

When the proportions are different, you will need retargeting. However, since the meshes both use the same skeleton, the retargeting will be applied to the skeleton asset and not the animations. Read these on how to do that: Animation Retargeting, Using Retargeted Animations, and this video is what I followed: Skeleton Assets: Importing, Sharing Skeletons & Anims | 02 | v4.8 Tutorial Series. It’s simple & fast and only needs to be done once on the skeleton asset.

Any other touchups you do in the animation blueprint.

If there is no difference in the base rig as far as key poses goes you can correct the key pose by laying a additive pose using Layered Blend Per bone.

Base theory is the the first frame of an animation sequence could be considered the key pose for that sequence. The key pose is usually derived from the skeletal assets as imported, usually in the A or T pose. The animation is then applied as an absolute value as to transform and rotation. You can change the key pose of the sequence by changing the “relative” rotation of of the “additive” pose before the final result.

The basics. Using the first pose in the sequence as the reference you would create a pose of the same character reposed using heels and assign it as an additive. With in your migration path, before final out put, you would add the additive to the Layered Blend Per bone targeted to the left and right foot, you might have to play around a bit, and since it is not absolute the rotations with be + or - based on the key pose that it is applied to. Same animations but makes us of a “corrective” pose so that all of the animations applied now adds the use for heels.

Another use is to say add different weapons to the same animation stream

Can you point me, how to do it. When i change something in sequence (move\rotate), my skeleton is changed and overwriting for ALL animations.