Animation off center?

Trying to simply have my character sit, I’m having a bit of a conundrum.
I’m using Mixamo animations and modified the basic animation state machine like so:

In the Stand_To_Sit state I simply play the animation going from stand to sit, etc.
The problem it seems is that the Sit (Idle) animation seems to be off location-wise from the other 2 animations (stand-to-sit and sit-to-stand).
Testing the state machine, you can see below the character “sliding” after Stand_To_Sit has been played and when playing Sit animation:


What did I do wrong? How do I fix that?
Is that the wrong way (full state machine vs. play stand-to-sit animation + only a “Sit (Idle)” state) to go about it?

Thanks for the help!

Any one? :frowning:
It still is puzzling me.
Any hint is appreciated.

I had the same problem. I solved it by adding a root bone to Mixamo default skeleton and animations.

By default, Mixamo animations do not have root bone. So, Unreal uses “Hips” bone as the root, but that causes problems like the one you are having.

To add a root bone, you will need some external tool. As far as I know you can’t do it in UE4. I used Autodesk Maya for this. (It has not free, but you can get a 3-year free version for students.)

There is this simple tutorial on how to add root bone to Mixamo animations that I followed:

Note: It would be great if someone else could expand this answer with further step-by-step instructions. Unfortunately, I don’t have the time to do it myself.

This is great advice you gave to add root bone with the mixamo blender plugin. What I can add from myself because I was facing the same problem recently. I spent on this about 3 days.

  1. Convert your skeleton & animations with mixamo converter. Make sure you use blender 2.8 and not recent version as your animations will shake weirdly after conversion. Link to converter: GitHub - enziop/mixamo_converter: Blender addon for converting mixamo animations to Unreal 4 rootmotion. There is plenty of tutorials on youtube showing how to use it.
  2. Import them to unreal.
  3. Open each animation and select EnableRootMotion setting
  4. This was the game changer for me. Go to your Animation blueprint and change Root Motion Node to “Root Motion from Everything”.

Most tutorials show playing animations from animation montage which will work probably without step 4 above. For me it wasn’t working out of the box because I use Blend Poses as below:

It wasn’t easy to find this option as no one mention it! Hope this will help someone in the future.

On top of this I can tell that if you use root motion but your spawned character moves in the same position then remember to set following after the spawn:

For some reason root motion doesn’t work without it.