Answered

ArgumentException: Illegal characters in path.

Jack 3 months ago updated by Peter - Soxware Developer 3 months ago 6

Im just trying to use the tool just as its described. it gives me a very weird error and doesn't output anything

ArgumentException: Illegal characters in path.
System.IO.Path.Combine (System.String path1, System.String path2) (at :0)
01100101101111000011001010100111100101001011100.11101001010110101000101011101000000101010001100 (UnityEngine.AnimationClip 01111001000001100011100110110101011100110110110, SoxwareInteractive.AnimationConversion.AnimationConverter+Configuration 00110101111000110100101101011111011111011010111, System.Single 00001110111001010001111100000000100011111000101, System.Single 11011111000111101110101001100000001111101110010, System.String& 11110001011111110000100111100001101101000111111) (at :0)
SoxwareInteractive.AnimationConversion.AnimationConverter.Convert (UnityEngine.AnimationClip[] clips, SoxwareInteractive.AnimationConversion.AnimationConverter+Configuration configuration, System.String& logMessages) (at :0)
SoxwareInteractive.AnimationConversion.AnimationConverterWindow.OnGUI () (at Assets/AnimationConverter/Scripts/Editor/AnimationConverterWindow.cs:604)
UnityEngine.Debug:LogException(Exception)
SoxwareInteractive.AnimationConversion.AnimationConverterWindow:OnGUI() (at Assets/AnimationConverter/Scripts/Editor/AnimationConverterWindow.cs:610)
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)

UMotion Version:
Unity Version:
2019.4.34f1

Answer

Answer
Answered

Hi Jack,
thank you very much for your support request. Looks like somewhere in your file paths, there are folder names, that use not allowed characters. Try to only use only the following characters in your folder names: a-z, A-Z, 0-9, _, *space*. Also only use these characters in file names.

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

Best regards,
Peter

Answer
Answered

Hi Jack,
thank you very much for your support request. Looks like somewhere in your file paths, there are folder names, that use not allowed characters. Try to only use only the following characters in your folder names: a-z, A-Z, 0-9, _, *space*. Also only use these characters in file names.

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

Best regards,
Peter

Image 1439

I thought that might be the case but its really not.
The project I'm testing it in is pretty much new too. like it doesn't have any other tools in it or anything.

Ive figured it thanks to you!

So the issue was due to blenders export putting the big vertical bar in the automatic naming during import

Image 1440


you can rename those in the animation section.

Sadly tho it did not fix my issue that I had hoped the tool would fix for me.
I hoped the tool would fix an issue where the rig conversion into humanoid would not destroy the animation.
Specifically i have that issue with the lips and eyelids.

They work fine if the character is in generic but they do not in humanoid mode since the information isn't being transferred or something.

here the left ones in generic with the same animation and the right ones in humanoid with the tool exported animation

Image 1441

Would you have any suggestions?

Great to hear that you've been able to resolve the original issue.

Regarding the face animation, is it done via blend-shapes or via bones? If it's done via bones, chances are that the humanoid avatar doesn't have the correct roles assigned to the yaw bone. Anyway, humanoid does have a setting somewhere in the animation's fbx file's inspector window where you can keep extra bones animation. Yet the setting is kinda pointless, as humanoid's purpose is to share the same animation across multiple characters and those generic extra bones wouldn't translate to other characters.

Best regards,
Peter

its all bone based animation.
And all the rigs have the same names and contents.
If I was to copy paste the animation in a pre export to unity the animations work fine but if I try to play them in unity without the humanoid type then everything breaks as the animation even breaks on the same character they're originating from. kinda at my wits end.
Maybe I need to go with blendshapes after all.

How would you go about retargeting facial animations between hierachly identical rigs?

Basic facial re-targeting is supported by humanoid by the Yaw and eye bones. Make sure to check out the humanoid avatar configuration.

But if the characters really do have the precise same rig (not only same name, but also same bone length, initial orientation, etc.) then you can share a generic animation between those two.

Using blend-shapes is also a feasable way to "re-target facial aniamtions" as blend shapes already normalized the animation. A blend shape is like:

"smile = 0...1"

As long as blend shape smile exists on all characters, it's automatically shareable as e.g. smile=0.5 should give same results across all your characters (i.e. 50% neutral face, 50% smiling face). Hope this makes sense.

Best regards,
Peter