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

[FBX] mixamo animation is broken and mesh skin is hidden #43218

Closed
mbrlabs opened this issue Oct 30, 2020 · 9 comments
Closed

[FBX] mixamo animation is broken and mesh skin is hidden #43218

mbrlabs opened this issue Oct 30, 2020 · 9 comments

Comments

@mbrlabs
Copy link
Contributor

mbrlabs commented Oct 30, 2020

Godot version:
3.2 4f908fb

OS/device including version:
Windows 10

Issue description:
I wanted to test the new fbx importer from #42941 on a more complex model and found this animated character on OpenGameArt (Probably exported from Blender with rig+animations from mixamo). While the old version of the importer also has some issues (wrong material, and a weird bend on the arm) it generally imported quite nicely, even the animations.
When i use the new importer all i see is the rig and no mesh. The animations are also pretty messed up. I don't know if this can be fixed by tweaking some things after importing, but i feel this should work out of the box 😄
I also didn't see any error messages (at least not in my release build).

@RevoluPowered

Here is what the new importer does:
new_importer

And this is with 3.2.3 stable:
old_importer

Steps to reproduce:
Just download the model, import and open the fbx scene.

@RevoluPowered
Copy link
Contributor

RevoluPowered commented Oct 31, 2020

Thanks for the first issue, we expect some as we make bug-fixes for the beta release :)

(saw the asset linked in the post) never mind...

@RevoluPowered RevoluPowered changed the title The new FBX importer has some issues importing a rigged and animated model FBX 3.2 rewrite - mixamo animation is not working Oct 31, 2020
@RevoluPowered RevoluPowered changed the title FBX 3.2 rewrite - mixamo animation is not working FBX 3.2 rewrite - mixamo animation is not working [missing source, skin is hidden Oct 31, 2020
@RevoluPowered RevoluPowered changed the title FBX 3.2 rewrite - mixamo animation is not working [missing source, skin is hidden FBX 3.2 rewrite - mixamo animation is not working and skin is hidden Oct 31, 2020
@RevoluPowered RevoluPowered changed the title FBX 3.2 rewrite - mixamo animation is not working and skin is hidden FBX 3.2 rewrite - mixamo animation is not working and mesh skin is hidden Oct 31, 2020
@RevoluPowered RevoluPowered changed the title FBX 3.2 rewrite - mixamo animation is not working and mesh skin is hidden FBX 3.2 rewrite - mixamo animation is broken and mesh skin is hidden Oct 31, 2020
@RevoluPowered
Copy link
Contributor

RevoluPowered commented Oct 31, 2020

Notes:

  • bone interpolation here is broken with the fbx tracks [anim interpolation code - baking from blender?]
  • the mesh disappearing - again workaround -> clear skin will resolve mesh being invisible. [skin binds are wrong from blender, implement workaround for add_named_bind with blend files]

@RevoluPowered
Copy link
Contributor

RevoluPowered commented Oct 31, 2020

If I recall correctly the skin hiding is because of a bug in our code when unused deformers are removed

(fixed in 3.2 branch, but still has axis problems)

@RevoluPowered
Copy link
Contributor

RevoluPowered commented Oct 31, 2020

OK so compared against GLTF2, noticed the binds for the skin and the skeleton properties are reversed in the Blender FBX exporter.

On Monday will look into this further and wait for more bug reports :)

Some more notes:

  • axis conversions from blender are wrong
  • EulerToQuaternion is working fine
  • get_vertex_skin_xform is returning the bone offset matrix which is wrong.
  • skin bind pose is stored in the local xform - the non FBX way.

We will have to follow the conventions which assimp used to resolve this, and file upstream bugs to blender fbx exporter

@RevoluPowered
Copy link
Contributor

progress - confirmed skin binds are wrong, most likely the convention they are exported with is actually the wrong axis.

image

@RevoluPowered RevoluPowered changed the title FBX 3.2 rewrite - mixamo animation is broken and mesh skin is hidden [fbx-rewrite] mixamo animation is broken and mesh skin is hidden Oct 31, 2020
@RevoluPowered RevoluPowered changed the title [fbx-rewrite] mixamo animation is broken and mesh skin is hidden [FBX Rewrite] mixamo animation is broken and mesh skin is hidden Oct 31, 2020
@fire
Copy link
Member

fire commented Nov 16, 2020

Wanted to see if there's any movement on this.

@RevoluPowered RevoluPowered changed the title [FBX Rewrite] mixamo animation is broken and mesh skin is hidden [FBX] mixamo animation is broken and mesh skin is hidden Nov 20, 2020
@RevoluPowered
Copy link
Contributor

#44402 These issues apply to this issue.

@akien-mga
Copy link
Member

This is probably fixed with the new FBX importer using FBX2glTF.
You can test it in Godot 4.0 alpha 6: https://godotengine.org/article/dev-snapshot-godot-4-0-alpha-6
This new importer might also be backported for the 3.x branch eventually.

If you still find issues with these models using the new importer, we suggest opening a new issue with details about the problems in Godot 4.0 alpha 6 or later.

@mbrlabs
Copy link
Contributor Author

mbrlabs commented Apr 7, 2022

Yep, can confirm this fixed it :)

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

No branches or pull requests

5 participants