Answered

Can't load old animation files (1.28 - 1.26)

eetu 4 years ago updated by Peter - Soxware Developer 4 years ago 5

I updated Umotion to 1.28 and now I can no longer use 1.26 version files.

Answer

This sounds like an issue with the Unity import pipeline / the importing procedure with Blender. Importing stuff can be challenging as there are a lot of different settings involved especially when working with "humanoid".

I'm rather sure that this is the root cause of the issue, as there have been no changes in UMotion's code regarding animation import that would explain a different behavior between V1.26 and V1.28.

Best regards,
Peter

Answered

Hi, the new API looks great, can you please write us a copy pose script to show us an elaborate example?

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

It would be nice to see this in action. It takes quite a while going through the trial and error and it would help a lot to see some actual functionality carried out by the new API in conjunction with the pose/clip editors.

Answer

Hi,

thank you very much for your support request.

With PoseEditor.GetSelectedTransforms() you can get access to the current selection. Just iterate over the transforms and store the local position, rotation and/or scale values.

List<transform> transformsList = new List<transform>();
PoseEditor.GetSelectedTransforms(transformsList);

List<Quaternion> copiedLocalRotations = new List<Quaternion>();
foreach (Transform transform in transformsList)
{
   copiedLocalRotations.Add(transform.localRotation);
}


To apply the saved pose use PoseEditor.TrySetFkLocalPosition/Rotation/Scale().

for (int index = 0; index < transformsList.Count; index++)
{
   PoseEditor.TrySetFkLocalRotation(transformsList[index], copiedLocalRotations[index], "Paste Pose", false);
}


A complete documentation of the UMotion API can be found here: https://www.soxware.com/umotion-manual/UMotionAPI.html

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


Best regards,
Peter

Answered

how to combine animations using script API

mb1 4 years ago updated by Peter - Soxware Developer 4 years ago 1

I need to concatenate multiple clips together and export them, can this be done using UMotion Pro API?

Answer

Hi,

thank you very much for your support request.

Similar to your other request about scaling the timing of the animation, this would require having quite a few more things exposed by the clip editor API. At the moment, the necessary things are not yet available from the clip editor API but I might add that in future versions.

You could concatenate multiple clips using Unity's regular editor API though (combine several animation clips into one *.anim file).

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

Best regards,
Peter

Answered

how to change animation speed from script

mb1 4 years ago updated by Peter - Soxware Developer 4 years ago 1

Is there a way for me to change the speed of animation (specifically rescaling the keys in time) using the UMotion API?

Answer

Hi,
thank you very much for your support request.

Unfortunately, this is currently not possible yet. I've put this on my "ideas for the future" list to consider this in a future update. 

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

Best regards,

Peter

Fixed

Reproducable bug - player gameobject deleted when dragging to "Select a GameObject to animate" if gameobject is inactive

Kevin B 4 years ago updated by Peter - Soxware Developer 4 years ago 5

If player gameobject is inactive and I drag it to the "Select GameObject to animate" it comes back with the message saying "The human avatar doesn't fit the selected gameobject.  The required human bone "Hips" has not been found." .. but then it deletes my player gameobject from the scene!

If I try again making the player gameobject active it works as expected.

Answer

Thank you very much for your patience. A fix for this issue has been implemented in UMotion V1.28p01.

Thanks again for the time you've put into reporting this issue. I really appreciate your help in further improving the stability of UMotion.

Don't hesitate to contact me in case you find any other issue or in case you have any questions.

Best regards,
Peter

Not reproducible

I can't select a bone with the mouse

Lev 4 years ago updated by Peter - Soxware Developer 4 years ago 2

Hi! I ran into this problem: in the new version of unity 2022.1.0a15, it is impossible to select a character bone by clicking on the interactive bones in the editor, but they can be selected if you climb into the scene camera under the character model, then the choice is normal.

Answered

Any way do keep project open after enter playmode

Invector 4 years ago updated by Ronald 1 year ago 8

Love this tool but it's so annoying to keep reopening the project and assigning the object to animate after I enter play mode to test the animation, this workflow is really slowing me down.

Answer

Hi,
thank you very much for your support request.

You could use the UMotion API (see documentation). It provides methods to open a sepcific UMotion project and also to assign a GameObject to the pose editor. Something like this should work (written out of my head):


using UnityEditor;
using UnityEngine;
using UMotionEditor.API;

public class MyUMotionExtension
{
   [MenuItem("Window/Open My UMotion Instance")]
   private static void OpenMyUMotionInstance()
   {
      ClipEditor.LoadProject("Assets/umotion_project.asset"); // <-- insert the correct path. Path must be relative to Unity's project directory.
      GameObject animatedGameObject = GameObject.Find("MyCharacter"); // <-- insert name of your character
      PoseEditor.SetAnimatedGameObject(animatedGameObject);
   }
}

A clean and universally working solution has proven to be very difficult to implement in UMotion.

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

Best regards,
Peter

Answered

Only avatars created by unity model importer are supported

Anonymous 4 years ago updated by Peter - Soxware Developer 3 years ago 8

I'm using this asset for importing MagicaVoxel models into unity - https://assetstore.unity.com/packages/tools/modeling/voxel-importer-62914 It supports rigging and creating custom avatar for imported models. Generic and legacy animations works great but Humanoid animation throws "Only avatars created by unity model importer are supported". I understand that you need some additional info to be stored in avatar. Is there any workaround to make it work? I could just use generic animation type but I have some older humanoid animations that I would like to use in my project.

Answer

Hi,
thank you very much for your support request.

Is there any workaround to make it work?

Yes, there is an easy workaround: Download Unity's FBX exporter package using the Unity package manager. Then use the FBX exporter to create an actual *.FBX file out of your character. You can then configure your fbx character to humanoid and use it with UMotion's humanoid features.

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

Best regards,

Peter

Answered

Model not showing after exporting animation

kingtom14 4 years ago updated 4 years ago 5

After exporting animation from the clip editor, I added it to the timeline but for some reason, the animated object is not visible?

Image 1011

Red - the clip, exported from UMotion clip editor

Blue - Where the model should be according to the animation

Why is this happening and how can I fix this?

Thanks

Answer

Hi,
thank you very much for your support request.

  • Have you checked where your model is shown instead? Try selecting your character in the hierarchy and press [F] to focus the camera at it's location.
  • Maybe there is a difference in the scaling (so it might got very small) and thus you can't see it.
  • Or maybe the position is offset. In timeline, the final position of an animated object isn't solely defined by the animation clip itself. There are also position/rotation offset settings you can define per animation track and per animation clip. You can see these settings displayed in the inspector by selecting the track or the animation clip in timeline.
  • By selecting the animation clip in Unity's project window, the inspector also shows you a lot of root motion settings which also has an influence at how the root position of your character, stored in the animation clip, is treated.

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

Best regards,
Peter

Answered

Animation Rigging integration

nehvaleem 4 years ago updated by Peter - Soxware Developer 4 years ago 1

Hi! 
First of all, thanks for your amazing work! I really love UMotion.

I've got a question - is it possible to sync/trigger the Animation Rigging while working in the editor? I have a character with a humanoid rig that has additional exoskeleton arms that are being driven by the Animation Rigging package. It would be awesome if I could preview the combined output while animating in UMotion. I've seen somewhere that something similar was possible for FinalIK, but haven't found anything related to Animation Rigging itself.

Answer

Hi,

thank you very much for your support request.

Unfortunately there is currently no official support for animation rigging yet. But I think it might be possible to manually trigger the evaluation of the animation rigging using UMotion's callback system.

Write a script that implements a UMotion callback (as described in the link above). This callback method is then called every time UMotion updates the pose of your character. After that, trigger the re-evaluation of the animation rigging. You might have to do a bit of an internet search on how to exactly do that.

I hope this helps. Please let me know if you're able to get this working.


Best regards,
Peter