Lets go with a diveroll animation.
Your character is traveling at 600 units in a direction and you execute the diveroll action. Your characters velocity goes to 0, as this is the start of the root motion animation. And then proceeds to apply the velocity of the root motion that was extracted.
If your character is moving at slow speeds this is not a problem as it might go unnoticed.
But if traveling at highers speeds like a full sprint and you execute a montage the pause is very noticeable and also a bit unnatural considering you are moving really fast, dead stop and then roll at a much lower speed.
I tried compensating by adjusting my animation to have the root shoot extremely fast but there will always be that initial 0 velocity and then you are also having the same velocity regardless.
If there was the possibility to use some additive velocity it would make some animations better as it would eliminate those awkward pauses. Not only that but perhaps in some cases your character would have traveled 1800 units forward while doing the animation at its current velocity. But Now it only travels 900 units forward due to the velocity being overridden or forced from the root motion extraction.
But then there is the catch of not having it always enabled. Because in some or majority of use cases you would not want the velocity to be additive.
For example in my ledge climbing animations, additive velocity from the root would result in inaccurate animations and some parts not aligning. So i guess if this is something that is being considered its very important to take that into account.
That its not forced to be additive but rather an option. If you can control this bool or change it at runtime that would be even better. Because you can then have your montage playing and at frame 26 set the bool to false, that way restricting it to the original montages velocity. For example at the frame your feet touches the ground again.
I use montages in a lot of situations. For now when doing animations that looks better when using the current velocity i implement a simple bool and place a branch in front of all my input nodes so that keys don’t register while doing that specific animation and then also force movement in the direction you were traveling. Its not hard to implement, but it would make life just a tiny bit more convenient working with montages that has additive velocity. And truthfully its only the one animation i have that would have benefited from this feature.
I hope this explains my use case a little better.