UE5.0 Motion Warping not translating

Hello guys,

I’m trying to use the new Motion Warping component included in UE5.0. As you may have noticed, in this release the “simple warp” is not aviable, and you can only use Skew Warp if you want to translate and rotate the character towards a Target Warp point.

The thing is that using Skew Warp the only effect I get is the rotation, but the character does not translate whatsoever (no matter the value of the translation vector I set, the character stays in his current position and it only rotates).

Did you guys tested this functionality in UE5.0? Did it work for you? I really need this feature in my game, but maybe the tool is still not working properly (or I’m doing something wrong). I seriously don’t know anymore :sweat_smile:

Thank you in advance!

6 Likes

After playing around with the animations, I’ve come up with what was causing the problem. It turns out that the animation NEEDS to contain some root translation and rotation in order to be detected by the motion warper. In my case, my animation was a guy sitting down on a bench, so the only thing I was setting was animating was the rotation.

This is a bit counterintuitive, since there are some times (like this one) when you wan to translate an actor in place, but the animation doesn’t need of any translation per se. Anyways, adding a small translation to the root in the animation solved the problem!

4 Likes

I have the same problem in 5.0.1, have you found any solution?

Yes (though I don’t know if “solution” is the right word lol). As I mentioned in my previous post, Motion Warping requires some root translation in the animation. So in order to get it working you have to edit the animation and animate a bit the root bone. The same goes for rotations: if you want to motion warp the rotation of your character, then the animation must contain keyframes with rotation values for the root bone.

I think this is due to how Motion Warping works: it takes the key frames of the root and scale them up depending on what is your target translation/rotation.

Hope this helps!

1 Like

Just in case someone else is as dumb as I was, I had this same issue, but in my case it was because I was setting the “Custom” EMovementModel before the play montage. Originally I’d been using Flying, which works fine btw, but switched to Custom somewhere in experimenting, and Custom totally blocked the root motion. I gather you have to implement a node before that does anything at all, including root motion.

Once I had that, my original animation with only a little root motion worked just as well as the more expressive one with a ton of root motion, which I’d made because of this thread, heh. Oh well, now I have two good anims!

2 Likes

Same issue here, adding a small translation didn’t work for me :confused: