Added turn in place support.
Why bother?
You can achieve a perfect result of character and movement synchronization using rootmotion animations & root motion controllers, but there’s several issues with that:
First of all, with root motion the movement is baked into the animation and cannot be adjusted for gameplay reasons, can’t control the movement speed beside playing the animation faster (small margin before looking bad), if you want your character to drag more than usual because of ice on the ground you can’t, while using charactermovement component ground friction could do just that for the capsule movement.
Another issue is replication, root motion is driven by baked movement into the animation, while classic capsule based movement (CharacterMovementComponent) is driven by predictable, efficiently replicated kinematic equations.
Last but not least, artistic control, handling camera for kinematic driven capsule movement works extremely well and can be handcrafted to extreme details without unwanted movement getting in the way.