Merge pull request #27162 from guilhermefelipecgs/fix_26540

StateMachine: Fix sync mode
This commit is contained in:
Rémi Verschelde 2019-03-27 17:01:28 +01:00 committed by GitHub
commit 1b4204fd76
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -440,13 +440,13 @@ float AnimationNodeStateMachinePlayback::process(AnimationNodeStateMachine *sm,
bool goto_next = false;
if (switch_mode == AnimationNodeStateMachineTransition::SWITCH_MODE_IMMEDIATE) {
goto_next = fading_from == StringName();
} else {
if (switch_mode == AnimationNodeStateMachineTransition::SWITCH_MODE_AT_END) {
goto_next = next_xfade >= (len_current - pos_current) || loops_current > 0;
if (loops_current > 0) {
next_xfade = 0;
}
} else {
goto_next = fading_from == StringName();
}
if (goto_next) { //loops should be used because fade time may be too small or zero and animation may have looped