Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Animation loop doesn't work with imported 3D scene #20467

Closed
guilhermefelipecgs opened this issue Jul 25, 2018 · 5 comments · Fixed by #39657
Closed

Animation loop doesn't work with imported 3D scene #20467

guilhermefelipecgs opened this issue Jul 25, 2018 · 5 comments · Fixed by #39657

Comments

@guilhermefelipecgs
Copy link
Contributor

guilhermefelipecgs commented Jul 25, 2018

Godot version:
9423f23

OS/device including version:
Linux 4.17.8

Issue description:
"Animation Looping" doesn't work when you have an "imported" animation player like this:
captura de tela de 2018-07-25 20-04-12

Steps to reproduce:
Import an 3D animation from Blender using better collada plugin;
Enable Loop Animation;
Press F5;

Minimal reproduction project:
Loop Test.zip

@guilhermefelipecgs guilhermefelipecgs changed the title Loop animation don't work with imported scene Loop animation don't work with imported 3D scene Jul 25, 2018
@guilhermefelipecgs guilhermefelipecgs changed the title Loop animation don't work with imported 3D scene Loop animation doesn't work with imported 3D scene Jul 25, 2018
@guilhermefelipecgs guilhermefelipecgs changed the title Loop animation doesn't work with imported 3D scene Animation loop doesn't work with imported 3D scene Jul 26, 2018
@karroffel
Copy link
Contributor

If you use BetterCollada you can name your animation TheAnimation-loop and it will be imported with loop enabled.

The problem is that imported animations are read-only. You can change them in the editor, but they are only changed in memory and not on disk, so as soon as you start running the game, a new process is spawned which reads data from disk.

This should be better documented and maybe a "copy-on-write" could be made for resources?

@reduz
Copy link
Member

reduz commented Jul 31, 2018 via email

@guilhermefelipecgs
Copy link
Contributor Author

If you use BetterCollada you can name your animation TheAnimation-loop and it will be imported with loop enabled.

Didn't work for me, I open an issue with a demo godotengine/collada-exporter#82.

@myuniquename
Copy link

myuniquename commented May 7, 2020

I have same issue with imported with glb animation file. I don't think it's it's collada specific issue.

The workaround is:

  • create new animation player in the scene
  • copy-paste animation from imported animation player to the new one
  • in the animation tree use newly created animation player (not the one imported from glb)

@Sl3dge78
Copy link
Contributor

Sl3dge78 commented Jun 17, 2020

After a bit of digging around I found out that there already exists a nice warning that pops up if the flag "track_set_imported" is set on the animation track. The thing is that this flag only gets set when choosing "Files" as Storage option in the importer.
Which I think is the opposite of what we want because changes get populated properly on anim files stored outside of the original one.
Working on a fix for this...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment