godot
godot copied to clipboard
Converting Godot 3 project to Godot 4 doesn't properly handle `transform` tracks in animations
Godot version
v4.0.dev.20211117.official
System information
Windows 10, gtx 1060, i5 4690k
Issue description
If you bring animations from Godot 3 to Godot 4, the tracks are wiped completely. Whether you import the tracks manually via .tres, or .anim, or if you bring the whole anim player over
Animation tracks did get a rework, but there is no indication to the user that the tracks will be wiped upon loading them into Godot 4.
Steps to reproduce
Open these files in Godot 3, and you will see the tracks. Open these same files in Godot 4, and the animation name will be there, but the tracks will be wiped, with no warning.
Minimal reproduction project
We have many cases like this. E.g. opening 3.x UI scene in 4.0 will completely break the layout. When such thing happens, you can always close the scene without saving and manually upgrade the tscn.
I'd suggest running some project converter or at least making a backup before attempting to open old project.
This is a result of #53689. All of your animation tracks are transform tracks, which got replaced by individual loc/rot/scale tracks. They're not wiped, as you can see when you open the AnimationPlayer.tres file in a text editor, they're just not recognized. You could update the tracks manually or automatically with some regex. We could also try to get the project converter to handle these cases.
Still valid as of 4.0 beta 5. The project conversion tool could possibly be enhanced to handle converting transform tracks.
Is this fixed now? Godot 4 beta 13
It doesn't look like it's fixed in 4.0 stable, and the converter also seems to be clearing. Opening my files outside of the editor to look at them just shows empty animations.
Will try to fix it.
Seems the problem still occurs in Godot_v4.2-beta4_win64
I'll be sure when I find the culprit (is there an easy way to find the culprit tscn?).