Answered

Foot placement incorrect when exporting as FBX & open mouth issue

Ben Webley 6 months ago updated by Peter - Soxware Developer 6 months ago 3

Hi,


I've had a problem where my character's mouth is open by default anytime I import into UMotion.  I can't close it because it shows it's closed in UMotion editor (I only have the option to open it more).

I read on another thread that if I export as an FBX instead of anim file I can then just go into the avatar config and delete the jawbone reference - but when I export to FBX the foot placement goes super funky.  Ironically, it fixes the mouth though as it doesn't export any facial/blend features.

The screenshots below are from a crouching animation which doesn't currently move (I just have 2 frames so it's accepted as an animation).

Here you can see that the right foot placement is fine - this is how it looks in UMotion editor and also if I export as an anim file:

Here is what it looks like if I export as an fbx:

Any pointers would be much appreciated as right now I'm left with either an open mouth or broken foot.  Neither are desirable.  :-)

Thanks!!!

UMotion Version:
1.20p05
Unity Version:
2019.2.0f1

Answer

Answer
Answered

Hi,
thank you very much for your support request.

When UMotion imports a humanoid animation it just plays and records the animation as if it would be played in-game. Thus if the animation doesn't show expected results (e.g. the mouth is open), then the problem already exists outside of UMotion and is most likely related to the humanoid avatar setup of your character (in your case probably the jaw bone).


For the following steps your character must not be assigned to UMotion's Pose Editor. Select your character in Unity's Project Window, then in the Inspector open the "Rig" tab and click on the "Configure..." button. Make sure that all of your bones are shown in green and that your character stays in a T-Pose (with closed mouth). Then apply the changes.


You can test your avatar config by selecting the animation you later want to import into UMotion. Then drag&drop your character into the preview window shown in the Inspector. Your animation should display correctly (the same way is it was displayed on Unity's default character).

Re-import the animation into UMotion and it should also display correctly.

When exporting to *.FBX, make sure to use the setting "Write Mode" = "Update Existing File" to export your animation into the *.FBX file of your character. This ensures that the correct humanoid avatar is used for your animation and should solve any re-targeting issues (like the one with the foot).

All of this issues are related to the complexity involved by Unity's humanoid system. I highly recommend reading this blog post to understand what humanoid does under the hood: https://blogs.unity3d.com/2014/05/26/mecanim-humanoids/

Please let me know in case you have any follow-up questions.

Best regards,
Peter

Answer
Answered

Hi,
thank you very much for your support request.

When UMotion imports a humanoid animation it just plays and records the animation as if it would be played in-game. Thus if the animation doesn't show expected results (e.g. the mouth is open), then the problem already exists outside of UMotion and is most likely related to the humanoid avatar setup of your character (in your case probably the jaw bone).


For the following steps your character must not be assigned to UMotion's Pose Editor. Select your character in Unity's Project Window, then in the Inspector open the "Rig" tab and click on the "Configure..." button. Make sure that all of your bones are shown in green and that your character stays in a T-Pose (with closed mouth). Then apply the changes.


You can test your avatar config by selecting the animation you later want to import into UMotion. Then drag&drop your character into the preview window shown in the Inspector. Your animation should display correctly (the same way is it was displayed on Unity's default character).

Re-import the animation into UMotion and it should also display correctly.

When exporting to *.FBX, make sure to use the setting "Write Mode" = "Update Existing File" to export your animation into the *.FBX file of your character. This ensures that the correct humanoid avatar is used for your animation and should solve any re-targeting issues (like the one with the foot).

All of this issues are related to the complexity involved by Unity's humanoid system. I highly recommend reading this blog post to understand what humanoid does under the hood: https://blogs.unity3d.com/2014/05/26/mecanim-humanoids/

Please let me know in case you have any follow-up questions.

Best regards,
Peter

Thanks for the response!  I've got the .anim files working by deleting the jaw bone in the avatar, so thanks for that.

I'm still having no luck with exporting to .FBX though.  If I save the animation directly into the character model as suggested my character goes very odd (really thin and about 20x the size!):

Any ideas on why this is happening?


Also, why would I save FBX directly into the character file?  I'd like to use this animation on multiple characters (just like I do with Mixamo animations) so I would have thought saving as a separate FBX would be the approach for that?


Appreciate any guidance!  Many thanks!

Hi,
it looks like your in-game character has some scaling applied (20x ?) that your *.FBX character hasn't.


"I'd like to use this animation on multiple characters (just like I do with Mixamo animations) so I would have thought saving as a separate FBX would be the approach for that?"

As long as your animation is configured as humanoid, you can re-use the animation on other humanoid characters. It doesn't matter if the animation is in a separate *.FBX or not. Please check out this blog post to learn more about that: https://blogs.unity3d.com/2014/05/26/mecanim-humanoids/

Humanoid *.anim files can also be used on other characters.

Best regards,
Peter