How to transition smoothly between rootBone based animations

You may have to disable or overwrite the root bone of the skinnedmesh animation in your render function to control it yourself.
Or you can remove the individual animation tracks affecting it, and control the root bone programmatically.
threejs isn’t very opinionated about how animations work, and doesn’t have any concepts of “root bone/root motion” animations.. that has to be implemented by you.