Root motion

How is movement supposed to be handled with root motion?

I’m asking from the perspective of a programmer, not an animator. I have not done root motion before in an engine.

I have some root motion animation sequences, but because I am using the move commands, they stutter as they move. These I had in a BlendSpace and called them based on the movement direction and speed. The character C++ code set those with move commands.

Is it possible to let the animation sequence update the character’s location as it get’s to the end of it’s loop so it can appear to move forward smoothly?

The reason for root motion is because the character is a cat and getting it’s four paws to all not slide around and also for the cat to turn is probably easier in root motion.

We have a work-in-progress of root motion which will be out soon, but that is for montage, not for blended animation.

Generally the way root motion works is to play animation and extract how much root track has been transformed, and then forward that to movement code to move that amount with collision enabled.

The stutter can be seen if it has a frame of delay(in other words, wrong tick order). Say you’re playing animation and you extracted the root, but you’re not feeding it to move right away, but movement is using the previously extracted value.

We don’t support blended root motion yet, which is what you’re asking here. The hardest part is not the part I described above, but the replication part. Root motion is not easy to make it work nicely in client/server. What we’re working on right now is to work montage to work with root motion.

Foot sliding can easily happen in any locomotion animation. If you have a steady constant speed of locomotion, blendspace would work fine without root motion. What root motion can do well is if you have irregular locomotion animations - i.e. limping.

Thanks,

–,

Hey ,

You said blended root motion is not supported yet. Does this mean that you guys are working on it?

We’re not working on it yet, but plan to do sometime soon. Hopefully in next 3-6 months. That is without replication, though.

Thanks,

–,

It will be enough for me to know that you guys have it as a planned feature. Doesn’t matter when it gets done. Will replication support be part of the plan at some point?

No, not for this time. From our feedback, the need for root motion is bigger than replicated root motion.

Is it on yet? I havent found the documentation.