Building a Root Motion movement controller?

I’ve seen lots of comments about using Root Motion that sound negative (terribly difficult to implement, doesn’t work with networking, etc). Some (or all) of which may not be true, but either way I decided to experiment with it a bit and I’ve come up with a nice looking movement cycle (I think).

Trouble is, I went thru heck implementing the movement (basically reimplementing UE4’s Movement Component in Blueprints) and I can’t help but to think there has to be a better way.

My BlendSpace is setup for reverse/forward and left/right from -1.00 to 1.00 (with 0.75 in either direction being walking speed, 1.0 being sprinting).

Take a look at the schematics below and tell me what you think…

Here is an example video of what I have so far…

Also - Please don’t **** on my code, it was thrown together in haste to see if I could make it do what I wanted - it still needs a lot of cleanup if I’m going to keep it. I was really hoping for someway to just take the standard player movement stuff and pump the values into my BlendSpace.

Hi OECInc,

Thanks for sharing. I think root motion is a very interesting feature and im trying to build my own controller based on this.

I can’t open you attached images…


Like it very much, ive been playing around but not got as far as this, would you mind if i used your code to play with ?

hey there so i kinda understand the logic you are going with i already have a rootmotion controller but the problem is it doesn’t have any way to support game pad simply because the axis is always firing so i didn’t know how to detect if its being used or not so please i would like a brief explanation of the events of slowing down the speed and the values of the speed multipliers

Okay so i got it all to work but i cant seem to get the character to work with WASD controls. How do you set up the animation bp. I think that is where the problems i am having are coming from.