Root Motion from Blend Space

Hi there,

I want my character to play different start-running/start-walking animations according to the inputted angle.
I already made most of the animations and put them into blend spaces.

I already figured out how to play the right animation when setting the character into motion, but it doesn’t look that good if I let the movementcomponent handle the rotation and location of my character.

So my new plan is to use the root motion information that all the animations in the blend space have and rotate and translate the character according to that.

I found out that I can throw animations into an anim montage and play the anim montage but I can’t do that with blend spaces or can I?

So is there a way to get the information from the animation in the event graph and apply the rotation and local translation to my character every tick or is there another way to do this?

If you don’t know what I am talking about here is a video of what I am trying to create:

note: I just need the starting animation to work: stopping and leaning is already done without root motion.

is there nobody with this problem or a solution?

@dj_joey have you found any solution as of yet coz I’m also facing this situation.

Hi Amaresh.

No not really sorry. I thought I add more other stuff before going into detail on some small things.
So I still don’t know if this is possible. If it’s not possible I think there are 2 possibilities:

  1. Just make 4+ animations for getting the character to start running and make 4+ anim montages for root motion. You can always add more animations (& anim montages) for more directions or different starting speeds.
  2. Do it with blend spaces but don’t drive the capsule by add movement input instead make your own logic and rotate / add position to the capsule according to the angle / speed.

If I find out more about this topic, I will update this if I don’t forget… However this could take a few months because my project is still far from being a game that I want to show people.

Could you also update this if you find out something or at least say what worked out best for you?

Best Regards, Joey

You can use root motion from blend spaces, you have to enable “root motion from everything” in your animation blueprint. Then place the blendspace in your Anim graph and connect the data.

ok… and how do I get the rotation and location information to drive the capsule?

Hey, @dj_joey I tried using timeline to gradually increase the speed of the character while turning. So that the character could complete its rotation before moving the capsule. That’s working ok for me right now.

Cause using root motion for the entire locomotion cycle doesn’t seem viable to me as a programmer (less control). And the only other way to enable root motion is to create montage. But you couldn’t use it inside a blend space.

Hope that’s helpful.

Cheers.

ok yeah that is one way to do it.

Cause using root motion for the entire locomotion cycle doesn’t seem viable to me as a programmer (less control).

I wouldn’t use it for the entire locomotion but just for some states.

And the only other way to enable root motion is to create montage. But you couldn’t use it inside a blend space.

Hmm… Thanks for clarifying that. It would be cool if you could just put a blend space into a montage and just feed the blend space data into the start animation montage node… But well.

Thanks for your comment and time

  • Regards, Joey