Build Type: ‘Binary’ build from the Unreal Launcher
Build version: 4.15.3-3450819+++UE4+Release-4.15
Detailed description of the issue:
In code, use Montage_Play to play montage A. Then detect whether A is finished using Montage_IsPlaying. When It’s finished, use Montage_Play to play another montage B.
If the duration of blend-out of montage A is shorter than duration of blend-in of montage B. It blends to T-pose because the sum of weight of A and B is less than 100%, as illustrate in the following picture:
Below is an example in game. Note how jump_end_montage has almost faded out before jump_end_crouch_montage has hardly blended in, resulting in 66% of total weight.
I’ve used many engines, the default behavior of the animation system is always that the total weight of current playing animations should always 100% in total. It doesn’t make sense to blend with T-pose. If the blend-out of 1st animation is really too short, the 2nd animation should be blending with the pose of the last frame of the 1st animation. A similar problem is this: Is it possible to prevent sudden jumps to the Tpose between AnimMontage transitions? - Character & Animation - Epic Developer Community Forums
I’m not using animation blueprint and state machine, because I’m porting an old project where it has lots of this “play a => if a finished => play b” code logic. I think any commercial engine should have this ability.