following Wes Bunn Live Steam animation tutorial -- Root Motion Problem?

Hi All.
I’ve been following along with Wes Bunn’s animation live stream, and have an issue I think has to do with root motion.
See image:

As far as I can tell I’m using the same assets as he is (Mixamo Mutant Character).

Someone on the Youtube video (Character Animation in UE4 | Live Training | Unreal Engine Livestream - YouTube) comments on the root motion issue, but I didn’t see any other comments.

Any tips?

Wes Bunn’s tutorials make us of in-place animation so if you are following along you can not really substitute root motion animation and expect the same result. So in away root motion is the problem

Hey thanks @FrankieV

This stuff is new to me, could you explain a bit further? In the video I do everything he does, but when his character walks around, it’s smooth, not like mine.

I’m wondering if he’s changed some setting I’m not seeing.

Do you have any suggestions on what I should search to learn the difference and / or best practice?

Well what you are seeing is that when using root motion you have to tell UE4 that it is RM and not in-place.

This is a good start as anything I could say is covered.

This is just part one so follow the bread crumbs.

Rule of thumb though expect all tutorials presented by Epic as requiring in-place animation and will not work with RM out of the box.

@FrankieV thanks for the helpful info and link.
I would ask you about the pros and cons of each, but that is something I will go research now :slight_smile:

Well it’s actually an easy answer

In-Place (coders love it animators hate it)

In-place animation is reactive meaning that to trigger a state it needs a component to react to. Think of it as a puppet in a box and to drive the animation in most cases uses the movement component of the character BP which is actually what moves relative to the bounding box. For example you push traditionally W to move forward the capsule moves forward and the animation BP general casts for the movement state and triggers the corresponding animation take.

The Good.

Since the animation reacts to the movement component all network requirements is handled by this component as to the important stuff like movement, error correction and top of the list replication and does so in an efficient manner. The important stuff gets transmitted and the clients only need to react to the state change on the local level.

The Bad

Since the animations are reactive there is always a degree of latency as to when the animation has to blend into and out of a state change. It’s not noticeable at first but the more complex the animation the more lagged the animation feels

The Ugly

Since the animation is bound to the movement component it’s difficult to keep the player grounded, 3rd person, as they are bound to the bounding box at a constant velocity.

Root Motion (coder hate it animators love it)

Root Motion is event driven so is not limited by the requirements of a movement component. In-place animation has history of always working were root motion is the future and is the way all animations are done in media that is not a video game but at the moment lacks any kind of extensive knowledge base as to usability

The Good

Root Motion as a data set can control all movement requirements with in the animations which in turn can be evaluated, calculated, and state changes determined “before” the event is triggered. For example distance travelled with in the cycle can be calculated and direction changes made with out the need for a state machine and base the animation, as an example. on motion matching

As you can see a line is projected as to where the character is going and where it has been.

Another problem solver is since the animation movement is based on the movement of the root the animation is referenced to ground and not world space as being glued to the movement component so no latency issues or feet sliding

The Bad.

More or less there lacks a knowledge base as to practical application. Tutorials that make use of -in-place do not translate well when the use of RM is desired instead.

The Ugly.

No component for network requirements and difficult to replicate.

Usability

Local

If your game does not require network connectivity Root Motion is the future of animation sub-systems as it has a much more direct plug-n-play ability and is a more logical choice for data driven animation requirements. You can for example already purchase a motion matching system

Network

In-place is more or less a must as although you could benefit by the use of RM as a data set the complexity of on-line gaming needs the trusted features of the movement component.Clients could miss the stop event an the player will continue to move forward as a fire and forget missile :wink:
. .

Oh wow. Thanks you so much for that, that is extremely valuable information.
I am definitely interested in networked games, so I guess I’m kinda stuck with in place for now.

Do you animated? Have you played with both? Sounds like you have you know so much about it.

edit* ps the motion in that video is *so *nice