Answered

Exported Generic Animation is incorrect

ThomasWindar 8 months ago updated 8 months ago 4

Hello - first of all, big fan of the software. Used it for a long time, still a big fan. Umotion Pro is amazing.
That said, with recent changes to Unity, I had to attempt the FBX export feature and it has errors...

I have an issue exporting the created animation into a .FBX file though. For some reason it applies an odd off-set to the exported Generic Anim:

Image 1339

The animation as a Unity anim works correctly and plays correctly.
However when updating the .FBX file of the model, it introduces the following errors:
- the character is given a massive off-set from the ground
- the character clothes parts are moving away from the mesh. 

- I am updating an existing FBX mesh file, a copy of the file originally imported and used for this animation.

The character was animated with an offset of 0.23 to left in the scene, but the Root doesn't seem to affect this behavior.
It uses a 2014 FBX binary format. 
Any ideas why this is happening? 
Thank you for your time.

UMotion Version:
1.29p02
Unity Version:
2022.2.6f1

Answer

Answer
Answered

Hi,
thank you very much for your support request.

You mentioned that you are exporting the animation into an existing FBX file. Maybe the character assigned to the UMotion Pose Editor is scaled differently than how it is scaled inside the FBX file? Because it looks like the positions of the cloth parts are off by a scaling factor.

  • Have you tried to play the animation on the actual character (that is also assigned to UMotion) and see if that works
  • Please also try the "Export As New File" mode?


Please let me know if that solves your issue or if you need any further assistance.

Best regards,
Peter

GOOD, I'M SATISFIED

Genuinely happy with the support - I was guided towards a solution that works perfectly!
Thanks for the help!

Satisfaction mark by ThomasWindar 8 months ago
Answer
Answered

Hi,
thank you very much for your support request.

You mentioned that you are exporting the animation into an existing FBX file. Maybe the character assigned to the UMotion Pose Editor is scaled differently than how it is scaled inside the FBX file? Because it looks like the positions of the cloth parts are off by a scaling factor.

  • Have you tried to play the animation on the actual character (that is also assigned to UMotion) and see if that works
  • Please also try the "Export As New File" mode?


Please let me know if that solves your issue or if you need any further assistance.

Best regards,
Peter

Thank you for the response.
I'll prefix this just in case - this is all done with "Generic" animations.

- tried the FBX export played on the actual character - the error persists in animation. 
- tried the FBX export As New File - this works in Unity but cannot be used anywhere outside, thus it doesn't fix my issue.

It appears that changing the Model's "Scale Factor" to 40 and above for some reason makes the clothes and bones of the character act normal. However the model completely loses Foot IK that was established in the animation.
The bones just rotate around the hip joint. 


It also seems to be positioned slightly off-floor.

Image 1340



The floor offset could be due to the root motion settings. Please double check that in UMotion and in the import settings of the FBX file the same root bones are defined.

this works in Unity but cannot be used anywhere outside

It's common practice that animations are in their separate FBX files. Why do you think you can't use it elsewhere?

It appears that changing the Model's "Scale Factor" to 40 and above for some reason makes the clothes and bones of the character act normal.

This solidifies my thesis that the model used in UMotion is scaled differently than the actual model inside the FBX. This might either be due to scaling inside your prefab or could also be a Unity thing when it imports the model from the FBX file. You would need to find a way to even out the scaling.


One more thing you could try is to use Untiy's built in FBX export to create a fresh export of your entire model + the *.anim animations exported from UMotion. The advantage here is, that Unity might export your character in the same way as it was actually used by UMotion. You can get the FBX exporter from the Unity package manager.

Best regards,
Peter

Thank you - the FBX exporter solved everything!

Just in case someone would have a similar scale problem in the future, here is what the solution looks like:
- Get the FBX Exporter from the Package Manager in Unity's Registry.
- In Umotion Pro, export all the animations you wish to transfer with the model as a Unity .anim.
- Put the Character(or animated 3D model) into the scene at 0,0,0. 
- Give it the "Animation" component. (it's a legacy component)
- Under "Animations" put the number equal to the amount of clips you want to export and fill each Element with them.
- After all this is set, make sure the 3D model is selected in the scene and choose "Gameobject -> Export to FBX"
- Choose the name for the Export and the Path to export to.
- Choose export Format (binary or ASCII)
- make sure "Include" has Model(s) + Animation and press Export.

This creates the FBX file correctly. 
I have personally tried it in Godot - the animation transfers flawlessly this way. 

Thank you once again for the Support Peter - you helped me a great lot!