You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Tested in Godot 4.2 stable and v4.3.rc3.mono.official [03afb92]
System information
Windows 11, Gpu RX 6600, Cpu 10400, Godot v4.3.rc3.mono.official [03afb92]
Issue description
Animations do not play if looping is enabled for the rest animations
There is a freeze that occurs just after playing the reload animation for the first time (more info on this below)
MRP.Video.mp4
Steps to reproduce
Open up the attached MRP.
There will be 2 AnimationPlayer nodes. Currently the "arms_rest" and "assault_rifle_rest" are not set to be looping. We will get back to this later.
Play the game with F5.
Immediately press R to play the reload animation. Part of the animation will freeze for the first time playing but will not freeze after that. You should see the reload animation play on repeat.
Some observations about the freeze.
Only the weapon animation freezes, the entire game did not freeze
If you wait 10 seconds before playing the weapon reload animation then there will be no freezing to begin with
The freeze happens every time the game starts up
This warning will appear in the console.
W 0:00:04:0825 _transition_to_next_recursive: AnimationNodeStateMachinePlayback: parameters/playback aborts the transition by detecting one or more looped transitions in the same frame to prevent to infinity loop. You may need to check the transition settings.
<C++ Source> scene/animation/animation_node_state_machine.cpp:918 @ _transition_to_next_recursive()
Close the game and set the "arms_rest" and "assault_rifle_rest" animations to be looping by clicking the looping icon in each AnimationPlayer node.
Play the game again with F5
Press R to play the reload animation and notice how the animations will not play at all. The same warning that appeared in console will appear again.
Minimal reproduction project (MRP)
MRP is 27 mb and GitHub upload limit is 25 mb so MRP was uploaded to MediaFire.
All thanks to sapulha_dakgen in the Godot Cafe Discord I was able to get both issues resolved.
(1) The freezing / animations not playing issue can be resolved by removing the "Autoplay on Load" from both idle rest animations.
(2) The warning in console can be resolved by setting the reload condition back to false when the reload animation is done playing.
I don't know if (1) is because of a bug in the Godot engine. If it is not a bug then maybe a warning could be shown saying "Using the Autoplay on Load flag while trying to transition from a looped animation will not transition unless you remove the Autoplay on Load flag".
I feel the warning in (2) could use a better description. Something like "You may have forgot to exit the animation. Try setting your condition back to false to exit this animation"
Tested versions
Tested in Godot 4.2 stable and v4.3.rc3.mono.official [03afb92]
System information
Windows 11, Gpu RX 6600, Cpu 10400, Godot v4.3.rc3.mono.official [03afb92]
Issue description
MRP.Video.mp4
Steps to reproduce
There will be 2 AnimationPlayer nodes. Currently the "arms_rest" and "assault_rifle_rest" are not set to be looping. We will get back to this later.
Immediately press R to play the reload animation. Part of the animation will freeze for the first time playing but will not freeze after that. You should see the reload animation play on repeat.
Some observations about the freeze.
This warning will appear in the console.
Press R to play the reload animation and notice how the animations will not play at all. The same warning that appeared in console will appear again.
Minimal reproduction project (MRP)
MRP is 27 mb and GitHub upload limit is 25 mb so MRP was uploaded to MediaFire.
https://www.mediafire.com/file/3e7p575esehewe1/MRP_AnimationTest.zip/file
The text was updated successfully, but these errors were encountered: