This is may be a very beginner question but I can’t find any yes or no answers or documentation on it. Is root motion not compatible in state machines in ue5?
I have a root motion animation that allows the player to fly, I just used ‘Play Montage’ node for this
but when implemented into a state machine, it looks like this, looks like root motion isnt even enabled here when it is.
my transition uses a boolean to see if button is pressed or not:
‘fly’ state looks like this, nothing special:
Should I add another variable for transmission like direction? or did I miss an option that should be ticked (outside of enable root motion in the animation, i already did that).
So that leaves me asking, how do you guys blend root motion animations together smoothly? I don’t want my player to stop in place everytime they want to fly.
Okay, where did you get the animation from? If it’s not from the Marketplace, you’ll likely have trouble. If it’s from Mixamo, you will DEFINITELY have trouble.
I needed to know this, just to be sure. I do not know what your experience is or what you’ve done prior. A lot of people don’t ask the right questions.
Anyway, unless the State Machine has been updated, the answer is “no”. It’s its own thing. It’s only meant to blend animation states/frames, not to adjust capsule behavior.
ahhh ok, so it doesnt handle root motion then just to be clear? I’m actually a beginner in this subject thats why I’m not very familiar
So if this is the case, how could I got about making the transitions smoother, because I used walk/run in a state machine / blend space, when using the ‘fly’ animation, the character must stop moving before executing it, how would I make it so it wouldn’t stop and just seamlessly starts the ‘fly’ animation even if the player is walking/running?
…and this is where the new system for 5.4 comes in. You’ll have to frame-match in up until 5.3, and then 5.4, it’ll frame-match for you.
I would start learning the system in 5.4 (assuming you’re not using it now), otherwise, you’re going to have to edit the animations yourself.
In the meantime, I would look at the LAYERED BLEND PER BONE node, and learn how it works and how to implement it.
You may need to shorten your animations, because too many idle frames can give you a choppy result, but again, the LAYERED BLEND PER BONE will interpolate the last frame of “walking” with the first frames of “flying”.
Cool to know! I was anticipating the update, was going to wait a little longer before updating just to see if anyone reports any major issues or if its unstable, from your experience, is 5.4 pretty good / stable ?
to summarise this chain: the answer is no, root motion cannot be used / controlled in state machines, if your animation uses root motion, don’t use it in state machines.
What you can do in my case, if you’re making a flying state: is remove the root motion from the animation and use it inside the state machine, and feed values such as ‘speed’ and ‘direction’ , the state will only be used if your player is at a certain height, kind of like jump looks, except the jump loop is a lot larger (because it’s flying).