Answered

Mismatch between UMotion Editor Setup and Unity Editor

schuebl.christian 8 months ago updated by Peter - Soxware Developer 7 months ago 10

Hi Peter,

recently I bought your tool and first I must say top notch work! Keep going on! I've a Mixamo sitting Animation and try to fit it for a sample Scene. To fit the sitting character with the Jeep model I use, I've modified the root bone position and rotation by an additive layer. I also fit the feet positions by IK using two separaded override layers. 

As you can see in the Screenshot, in UMotion anithing is fine. And the Animation now fits with the Jeep.

I've exported the Clip as binary FBX. But if I use this exported humanoid Animation in Unity the character height Position doesn't match anymore with the Animation. If I modify the root object Position in the Scene (not the model which is a child) it doesn't fit anymore with UMotion and vice versa.

Also the IK Setup for the feet right is missing in Unity (IK is active in the Animator and also the weight is set up to 1). I tried several set-up the last 2 Hours but I can't find a solution. Any help is appreciated. Thanks in Advance.


Best Regards 

Christian

UMotion Version:
1.22 Personal Edition
Unity Version:
2019.3.91f
Under review

Hi Christian,

thank you very much for your support request.


Are you planning to re-use that animation on multiple characters that don't share the same rig? (The synty studio characters of one package usually share the same rig if I remember correctly). If you don't, then I highly recommend using a "generic" character setup instead of a "humanoid" one. This makes everything a lot easier as generic is a regular animation and humanoid involves a lot of re-targeting "black magic" that can modify/offset your animation in unexpected ways. I don't say that it doesn't work, it's just more difficult.


Anyway, here are the most common mistakes in this regards:

  1. When exporting to *.FBX (and using humanoid), set the "Write Mode" to "Update Existing File" (in the export settings). Then select your character (or a duplicated version of it) as destination file. This is going to export your animation directly into the *.fbx of your character thus ensures max compatibility with your humanoid avatar.
  2. You need to configure the root motion behavior correctly. Check out the following settings in the *.fbx file of your animation and adjust them to your needs (if you don't know what they do, play around with them and see their affect):

(This might not be the correct settings for your situation!)

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

Best regards,
Peter

    Hi Peter,

    thanks for your response. Switching to non humanoid animations are not possible, because I use different Mixamo animations, which all are humanoid. Actually my unity set-up is working with different characters from synty studios.

    I checked my unity animation set up, this are exactly the same settings as you mentioned. The root motion flag is also active at the animation controller (disabling has no effect).

    Meanwhile i figured out, that there is also a object placement difference in UMotion when I set-up a new Project. This is my default Unity scene-view in UMotion without the attached object:

    When I attach the game object, the position is not the same as before, without any anmitation or something else:


    It looks to me that the initial bone set up produces this offset. Next I will try out to use a mixamo animation file export with the skin of my character. It sounds to me that is the same thing you mentioned with positon 1 of directly avatar export.

    Best regards

    Christian

    Additional Information: I check the set-up with a skinned Mixamo humanoid animation. This results in the same errors: The position has some offset and the IK set up is missing if I use an FBX file (2019 or 2011) export. But if I export the animation as anim file, it looks correct (ok some offset, but with included IK).

    Hi Christian,

    please note that the settings in the screenshot I posted are NOT the settings you are going to need. As I mentioned in my post you need to configure the settings to your needs (if you don't know how each individual setting effects your animation, please try them out and see how they change the animation). More information in the Unity manual: https://docs.unity3d.com/Manual/class-AnimationClip.html

    The following settings might work (it's hard to verify without having the actual setup): Try stetting everything to "Original" and enable the "BakeIntoPose" for every setting.


    Also very important, please correctly export your animation to *.FBX as mentioned in my previous post:

    When exporting to *.FBX (and using humanoid), set the "Write Mode" to "Update Existing File" (in the export settings). Then select your character (or a duplicated version of it) as destination file. This is going to export your animation directly into the *.fbx of your character thus ensures max compatibility with your humanoid avatar.

    Meanwhile i figured out, that there is also a object placement difference in UMotion when I set-up a new Project. This is my default Unity scene-view in UMotion without the attached object

    When creating a new UMotion project, UMotion takes the current pose your character has in the scene and stores it as "initial/reference pose". So the old project has the pose stored your character had when you first created your project and the new project has the pose your character had when you created the new project. If those scene poses where different, so will be the "reference pose".

    Best regards,
    Peter

    Hi Peter,

    please note that the settings in the screenshot I posted are NOT the settings you are going to need. As I mentioned in my post you need to configure the settings to your needs (if you don't know how each individual setting effects your animation, please try them out and see how they change the animation). More information in the Unity manual: https://docs.unity3d.com/Manual/class-AnimationClip.html

    I know, thanks. Yesterday I played arround with several settings but got no acceptable result with fbx exports. I figured out, that I always got slight differences between the object position and rotation when I export the same setting to anim or any kind of fbx file. While the anim export always fits better with my settings.

    When creating a new UMotion project, UMotion takes the current pose your character has in the scene and stores it as "initial/reference pose". So the old project has the pose stored your character had when you first created your project and the new project has the pose your character had when you created the new project. If those scene poses where different, so will be the "reference pose"

    Thanks for the hint, this was the missing link and clearify all.

    Best regards,

    Christian

    Answered

    Some small differences are always expected when working with humanoid. That's just how humanoid works (and that's why i suggest generic initially). When exporting correctly to *.fbx (using write mode = update existing file) *.anim and *.fbx should produce equal results.

    Best regards,
    Peter

    Thanks for your help. I could life with the small diffeces and when I use anim files. However, anim and fbx exports are always different:


    Set up new project, without changing anything and import a sitting animation from Mixamo. Export anim and fbx to new file (to existing model file doesn't work, I always get export failures that some bones are not found). As you can see, there are always slight differences between both exports, while anim has the correct pose.

    Best regards,

    Christian

    It looks like you haven't exported your *.fbx animation into your character's *.fbx (using Write Mode = "Update Existing File"). As a result you get re-targeting errors because the humanoid avatars are not exactly the same.

    Please export your *.fbx animation into your character's *.fbx (or a duplicated version of it). The resulting animation should have no such errors.

    Best regards,
    Peter

    Thanks for your hint with the retargeting. I could solve this issue now. I've to use always a skinned Mixamo file export and fix a naming difference between the Synty Studio right hand bones and mixamo names. Now I could export by update the skinned animation and all bones are retargeted correctly. That was hard to understand.

    Thanks for your exellent support and patience.

    Best regards,

    Christian

    I'm glad I could help :-)

    Best regards,
    Peter