Answered

C# API missing functions for importing animations

Null Void 2 years ago updated by Peter - Soxware Developer 2 years ago 1

It looks like there's currently no way to import animation clips using the C# API. 


I want to automate converting humanoid animations into generic animations using the Soxware's Animation Converter, and then use UMotion Pro to insert them into an FBX so I can access them in another program.

It would be nice if Animation Converter supported FBX editing functionality like UMotion does, but I will happily settle for having API access to the import functions in UMotion and automating it myself.

Would it be possible to include this in the next update, and when approximately would it be if so?

Thanks

Answer

Hi,

thank you very much for your support request.

I want to automate converting humanoid animations into generic animations using the Soxware's Animation Converter, and then use UMotion Pro to insert them into an FBX so I can access them in another program.

You can do all of that in UMotion Pro. Just configure your character as humanoid, create a new humanoid UMotion project and then import the humanoid animation. Then export as FBX. An FBX file "internally" is always "generic", it's Unity that would convert the FBX contained animation to humanoid when Unity imports the FBX file.

but I will happily settle for having API access to the import functions in UMotion and automating it myself.

You are right, I've put exposing the importing functionality on my to-do list for the UMotion API.

Would it be possible to include this in the next update, and when approximately would it be if so?

Unfortunately I can't provide an ETA at the moment, we have just launched a 3+ year project and it currently eats a lot of time (due to the launce phase). Should get better again soon, planning to invest more time in UMotion again then.

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


Best regards,
Peter

Answered

4-legged turning animations

Anonymous 2 years ago updated 2 years ago 4

Hello @SoxwareInteractive I thank you for making this great animation tool it does wonders. I have a Request is it possible by any chance you could show how to do turning animations for animals with 4 legs . I have tried but never seem to get to work ,or know if there is a reverse to do left and right exports . I have been using the deer and rabbit from Animal pack deluxe just no luck . The IK I'm not sure how it would work on 4 legged any ,and all If it is possible it would be greatly appreciated . Thank You For Your Time And Have A Great Day !

Answer

Hi,

thank you very much for your support request and thanks for the nice words.


Yes you can setup IK for 4 legged characters. Just create one 2-bone IK chain for each leg. I do not recommend creating IK bone chains that consist of more than 2 bones for your legs, because then you loose too much artistic control over the bones. In the second part of this video tutorial, you learn how to manually setup IK constraints:


Here is also the related chapter in the UMotion manual: https://www.soxware.com/umotion-manual/InverseKinematics.html

Unfortunately I'm not enough of an artist that I can provide you a tutorial with artistic advices on how to do 4 legged turning animations. I'm sorry.

I have tried but never seem to get to work ,or know if there is a reverse to do left and right exports

Mirroring a generic animation is currently not supported in UMotion. But you could create e.g. the turn left animation in UMotion, export to FBX and mirror the animation in Blender.

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

Best regards,
Peter

Answered

Perform Batch Actions

Kev 2 years ago updated by Peter - Soxware Developer 2 years ago 1

I can't find this in the scripting AP - but a really useful tool would be something that allows you to perform actions on one animation, and apply them to all other animations.

for instance, changing certain aspects of an animset - I'd like to be able to create and adjust another layer, and have those same adjustments apply to other animations in the project automatically.  It's quite tedious to manually go create all the layers and copy and paste the same keys in all of them repeatedly - and seems like something that wouldn't be terribly hard to implement.

Answer

Hi Kev,

thank you very much for sharing your idea.

You are right, the current UMotion API does not provide enough access to perform the batch action you described. Extending the UMotion API to get more low-level access to write such batch scripts is something I have on my list.


Best regards,

Peter

Answered

End Bones not aligned properly

thecodehermit 2 years ago updated 2 years ago 2

I have made the model`s the armature and bones in Blender. I have set each bone rotation to where I want it to be in Blender.

Since Umotion always hides the end bones, I have added extra bones to each end bone so they appear correctly in Umotion.

Lets take one of the legs for example. 

L1, L2, Bone rotation seems correct.  But L3 is not rotated correctly In Umotion. 

If I add more bones after Z in Blender and import the model to Umotion again then they are all rotated as they should except for L3 which stubbornly refuses to budge no matter what I do.

I have tried so many things, but I am out of ideas and patience. 

Hopefully someone can help me out with this.

Here are some reference pics:

Model in Unity

Image 1116

Bones in Blender

Image 1117

Bones in Umotion

Image 1118

Answer

Hi,
thank you very much for your support request.

Joints with no vertices bound to them are often not even included in the exported FBX file. If they are, than Unity does not configure them as bones when importing the FBX. Thus when you animate the 3D model with UMotion, UMotion can't display the end joint as bone as it simply isn't configured as bone by Unity. What you usually can do is that you extrude the bone in UMotion (see config mode video tutorial). But you can also simply click on the "Z" joint of your picture (the sphere) to select the last bone if you don't want to extrude the bone.

Regarding the rotation of the L3 bone, is it just that the bone visualization is rotated in the wrong way or are the rotation axis also pointing in the wrong direction? You can visualize the rotation axis by selecting the bone and enabling the move tool in local mode. The arrows of the move tool visualize the axis of the bone.

If the axis are wrong as well, than it's an issue with the export/import process of your 3D model from Blender to Unity. Placing the *.blend file directly in your Unity project (instead of exporting to FBX) often helps in such cases. Unfortunately the export/import process between Untiy and Blender has always been tricky to get right... Not an expert on this, as it caused me to switch to Maya LT a few years ago.

Best regards,
Peter

Answered

Animating a game object with a character in Umotion pro.

gal kinan 2 years ago updated by Peter - Soxware Developer 2 years ago 1

When animation in Umotion Pro a Humanoid character holding an object with child off constraint and then exporting a clip and applying the clip on another Humanoid character with the same rig create problem. When I try to apply the clip the child off object does not have the same translation and rotation as when animated within Umotion pro. The animation that is done on the object control itself seam to be gone. Is There a way to import the info of the object also with the info of the character ?

Answer

Hi,

thank you very much for your support request.

Unity by itself is not capable of doing animation re-targeting between generic objects. It can only re-target the humanoid bones.

One possible solution would be by using a combination of animation events and scripting (Transform.SetParent()) to do the parenting. In your scripting you need to also control the offset to match each character.


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

Best regards,
Peter

Under review

Unity crash when trying to clear / unlock a gameobject

Anonymous 2 years ago updated 2 years ago 4

Hello, I have a character assigned into pose editor. Out of a sudden, whenever I tried to unlock / clear it, unity will crash. 


I have already tried:
1) Clicking "restart Umotion" from the window. Unity crashes. Object still locked
2) Changing to another scene and return back. The gameobject is still locked


As the game object is locked and I'm unable to work on it or even run the game (as it lock the animations). 

After multiple crashes after clicking the "clear" button, Unity started crashing when I simply click to focus on pose or clip editor.

Note:
I'm using source control and my problem was resolved by removing all Umotion related change files. But I thought to report it just in case it helps

Answered

Tutorials

Anonymous 2 years ago updated by Peter - Soxware Developer 2 years ago 3

Hello, just wanted to ask, can i make my custom animation using this product such as like movement, jump, climbing snd stuff?

Answer

Hi,

thank you very much for your support request.

Yes you can make custom animations with UMotion. Some beginners prefer to start by altering existing animations though as that's usually easier/faster to get good looking results.

Here you find all available video tutorials: https://www.soxware.com/umotion-manual/VideoTutorials.html

I recommend starting with the quick start video tutorial. The video tutorials are split into different playlists. Some just cover the UI and all the UMotion features, and some demonstrate UMotion in practical examples (= the "UMotion In-Practice" playlist).


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


Best regards,
Peter

Not a bug

Bug that graph does not move up and down in curves

Two Comet 2 years ago updated by Peter - Soxware Developer 2 years ago 1

Image 1114

Select the entire graph on the right.
Drag left and right. However, it does not move up and down.
It doesn't move even if you click one by one.
Rotating directly in the scene moves only one frame.
If this isn't a bug, can it be improved to make it moveable?

Answer

Hi,
thank you very much for reaching out.

The behavior you've described is by design. The selected bone's rotation mode is configured as quaternion, that means the graph seen represents one of the 4 components of a quaternion. Quaternions are hard to imagine (they describe a rotation using 4 dimensions) and it's thus not possible to edit the quaternion values directly (i.e. move the curve vertically).

If you want this type of editing, you need to use the Euler rotation mode instead.

More information about the different rotation modes:

The related page in the manual:

https://www.soxware.com/umotion-manual/RotationModes.html

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

Best regards,
Peter

Answered

IK Hand rotation not rotating the forearm

mR d 2 years ago updated by Peter - Soxware Developer 2 years ago 1

I have a humanoid character and when I have the IK set up, it moves the chain correctly. The issue, however, is when I rotate the character's hand, his forearm does not rotate at all. 

In contrast, when I'm using Unity's IK Rigging and setting up a multi-bone constraint, it works perfectly fine.

Just like in real life, when you rotate your wrist, it should rotate the forearm, no? 

I don't think I'm doing anything wrong because in UMOTION video tutorial, the same behavior issue is seen. (see video at 8:43 mark:)

Youtube video
Answered

anim errors in Animator comp

Anonymous 2 years ago updated by Peter - Soxware Developer 2 years ago 1

Hello, 

Animator component shows animation errors "Binding warning: some generic clips animate transforms that are already bound by a Humanoid avatar. These transforms can only be changed by Humanoid clips : Transform 'root'  "

Created animation and exported as Fbx binary 2011, Rig type Humanoid, Animator is using Humanoid Avatar, the animation was created by my self, i dont get it what generic clips animate transform, it was clean Rigged Mesh, and one simple animation created with uMotion

annd what is the best option to create accuracy animations but with Humanoid type ? Generic would be the best option ? but w/o IK handles ?

Answer

Hi,
thank you very much for your support request.

Binding warning: some generic clips animate transforms that are already bound by a Humanoid avatar. These transforms can only be changed by Humanoid clips : Transform 'root'

This error means that you are trying to play a generic animation on a humanoid character. The reason might be that even though you've configured the FBX that contains the animation as humanoid, it's animations are imported as generic due to errors in the humanoid avatar setup. You would see these errors in the "Rig" tab of your FBX file.


annd what is the best option to create accuracy animations but with Humanoid type ? Generic would be the best option ?

Exactly, if you want high accuracy use generic. IK is also available for generic UMotion projects. Use the IK Setup Wizard and select the correct bones for the "Human IK" slots.

Only the muscle tool assistant (the window shown in the scene view) isn't available in generic projects. If you really want this window, you could workaround by duplicating your character. Configure the duplicated version of your character has "generic". Use the humanoid version for animating in UMotion, then export your animation into the FBX file of your duplicated character that you previously configure as "generic".

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

Best regards,
Peter