Playing animations doesn't work in the clip editor - scrubbing is fine
Hi there,
Just bought this asset as I need a replacement for Skele, seems good but when I create a new animation clip it won't play via the clip editor, it looks like it flashes playing a frame then stops. Scrubbing through it works fine, it animates, you can see the keyframes are correct, it just won't play.
Hi,
thank you very much for your support request.
Is it possible, that the Scene View window is not visible? In that case, Unity stops firing the cyclic callback method that is responsible for playing the animation.
Best regards,
Peter
Combining Multiple Clips Into 1 Clip?
Hey there! Just a quick question. Is there a way to combine multiple animation clips and stitch them together into 1 animation clip?
Hi,
thank you very much for your support request.
Sure, just import both animation clips into the UMotion Pro project. Then copy & paste all keys (or only the keys of certain bones) from one animation clip into the other (or into an override animation layer of the other).
For more information's about animation layers, check out the manual at "Clip Editor / Layers".
Please let me know in case you have any follow-up questions.
Best regards,
Peter
New features
Quite a while ago, you asked for suggestion for new features and Quality of Life improvements. How are these coming along?
Hi Craig,
thanks for reaching out.
I was very busy with support and patch releases in the last couple of months (the current version of UMotion had 14 patch releases). The next release is planned to include a bunch of QoL improvements that have been suggested by different users (I had to do some prioritizing as I thankfully get so many good suggestions that I can't include all of them).
I can't give any estimate when this new version is going to ship, as it depends on how much time I have for UMotion beside another game project my studio is currently working on, but I'm on it.
Please let me know if there is anything else you want to know.
Best regards,
Peter
Blending layers
I'm trying to blend between two animation layers, I can't see that this is possible. A blend parameter on each layer would be very useful.
Hi Craig,
thank you very much for your support request.
Blending layers is possible, but the blending weight is fixed for the whole duration of the animation (it can't be animated). Click on the blue bar and drag to the left to reduce the weight:
Please let me know in case you have any follow-up questions.
Best regards,
Peter
Is it possible to create an IK with the hand moving away from the rotation of a third-party object?
Hello everyone! Is it possible to create an IK with a hand moving away from the rotation of a third-party object? I would like to make an animation of the rotation of the handle with my hand using IK. but i can't assign the target object to this handle
Hi Lev,
thank you very much for your support request.
Generally speaking, an animation can only reference things that are a child of the Animator component that plays the animation. So in order to reference the switch, it would need to be a child of your character's Animator component.
Please also note that the effect of UMotion's IK constraint is baked into the final animation. That means that there is no IK executed at runtime anymore (meaning that your hand won't adapt to runtime changes e.g. when your character has position offsets relative to the switch). Depending on your requirements, you might want to use a runtime IK framework (like Final IK or the new animation rigging package) for this kind of situation.
Please let me know in case you have any follow-up questions.
Best regards,
Peter
I want to control UMotion IK from a script.
Is it possible to operate the Position and Rotate of IK (example: IK_Foot_L) created by IK Setup Wizard from the self-made method called by Extending UMotion → Callback Name?
Hi,
thank you very much for your support request.
While you can access and manipulate the IK transforms, the custom script is executed after UMotion finished updating the pose so it won't have any effect on the IK chain. The visualization of the IK transform also happens before the callback is called, so that's why you probably haven't seen any changes (when you tried it).
May I ask you to provide some more details about your use-case? Maybe there is another way you can achieve your goal.
PS: Please note that the callback method is only called while inside UMotion. UMotion's IK is not executed at runtime (when your game plays the exported animation). If you are looking for a runtime IK solution, please use Unity's built in IK (or their new animation rigging package) or 3rd party assets like Final IK.
Please let me know in case you have any follow-up questions.
Best regards,
Peter
Cancelling Display Dialog : This should not be called when a View's DrawRect Method is in progress
I was able to use UMotion with my current setup for a while, I made a couple of animations and then it suddenly stopped working with new models I tried to animate, a few days later I couldn't even open the same model that worked initially. This is the error I keep getting:
Cancelling Display Dialog : This should not be called when a View's DrawRect Method is in progress
UnityEditor.EditorUtility:DisplayDialog(String, String, String, String)
It triggers when I try to select a GameObject from the Pose Editor, the dialog shows and when I select the object I want to work with nothing shows up and this error comes in the console.
Fixed in UMotion V1.24. Available in a day or two via the asset store.
Thanks again for reporting.
Best regards,
Peter
In the "curve" view you can select a range of points and scale or lift up/down - can you rotate/skew as well?
I have a clip I purchased, but I am trying to create a walk loop from part of the clip. Unfortunately there is some other body movement going on in the clip (a head turn). I copied the last value of the clip and pasted it at the start - you can see where green line is the values are different - they jump quite a lot. I don't want to lose the subtle movements in the clip, but I want to adjust the points to get a smooth movement.
E.g. I would like to grab the blue vertical line on the left edge and drag it upwards, with the right edge not moving. That would adjust all the values in between by an amount proportional to where it is in the clip. It is kinda like rotating the blue box, but it might be more accurately skewing the box. The horizontal blue lines would be on a slight angle. (At the moment you can only move the vertical blue lines left/right for adjusting the length.)
My goal is to keep the subtle value adjustments in the clip, but make it end with the same value that it starts with so I can loop it.
I can scale the box (grab the top edge and drag it down), but that loses all subtle values movements in between. I tried deleting points than manually adjusting them (took too long adjusting them all), which is my last resort.
Is there another way to do this instead?
Hi Alan,
thank you very much for your support request.
I'm afraid there isn't really any other way than adjusting the keys manually.
Please let me know in case you have any follow-up questions.
Best regards,
Peter
Horse Animset Pro - Incompatible rig error
After opening the horse model from MalberS Horse Animset Pro, I select an animation clip from out of its animator, and drag it into the Import Clips dialog. For what appears to be every animation clip on the horse model, it gives an error saying "this clip of type "generic" uses a different rig than the animated GameObject and is thus not compatible."
Well, no, it doesn't. If the rigs were incompatible, it would not animate the model properly in Unity, but it does animate it just fine. And even if that were true, you would think that an animation editing tool would come with a feature to remap the bones of the animation's rig onto the object's rig in order to make it compatible, rather than just shutting the user down cold like that!
Unfortunately, as UMotion does not come with source code, I'm unable to do anything to track down the problem besides reporting an asset that reproduces it.
Hi,
thank you very much for the additional information. Meanwhile, thanks to Malbers (the creator of "Horse Animset Pro") I also got access to the demo scene and take a deeper look.
Solution
The error message UMotion is throwing is kinda correct, a detailed explanation follows below. In order to edit the horse animation, just instantiate the horse model (not the prefab!) and use that for your animation work. You can find the model in the "7 - Models" folder:
Explanation of whats going on
The error message UMotion is throwing is correctly indicating, that the rig used in the animation is indeed different to the rig of the horse prefab. You can see this in the following screenshot (H_Walk Right is the rig of the animation):
Notice how the animation's rig starts with a bone named "CG", while in the prefab the "CG" is somewhere deeper down the hierarchy. Animations use "transform paths" that are relative to the Animator component for addressing. A transform path looks something like this "CG/Pelvis/L Thig". UMotion validates those paths when trying to import a generic animation. As the prefab has no "CG" bone as a child of the animator component, it correctly shows the error that the rig is not compatible. I am going to improve on the error message so that it indicates this in a more clearer way in a future version of UMotion.
Also please notice, that the original model has the correct rig (see first screenshot). That's why it works when you use that.
So why is Unity still able to play this animation on this prefab with the modified rig? I honestly don't know because even Unity's built in Animation Window displays the bones as "missing":
Another thing, as I mentioned earlier, would be if instead of shutting you down cold, UMotion gave you the opportunity to remap the bones in the animation so that they would fit now.
Yes remapping the paths would solve the import issue, but note that all the paths would also be changed in the exported animation. That would mean that your animation would only work with the prefab's rig, not with the original model anymore. In most cases, you do not want that and instead want to use the correct rig for editing the animation.
Thanks for reporting this. Let me know in case you have any follow-up questions.
Best regards,
Peter
How to compare/diff two clips?
Is there any way to take two clips that are similar but not identical, and diff them to get a frame-by-frame report on what the difference between the two is?
Use case: I have a rigged character with three walk animations: walk straight, walk turning left, and walk turning right. I have another rigged character that only has a walk straight animation. The two rigs are not compatible, so I can't just add the clips from character 1 to character 2. Instead, I want to analyze the difference between the straight and the turning walk clips, so I can duplicate the walk-straight clip on character 2 and turn it into a turning clip.
Hi,
thank you very much for your support request.
You can sync UMotion with Unity's Animation Window (or Unity Timeline). That way you can preview the turning animation on one character using one of Unity's windows, and the one you want to edit/adjust using UMotion. The frame cursors are synchronized which makes comparing the animations very easy.
See it in action: https://www.facebook.com/1783887595207715/videos/1968103476786125/
For more information regarding the sync feature, please check out the manual at the "Unity Timeline Integration" chapter. There is also another video where you can see the sync feature (using Unity Timeline) in action:
Please let me know in case you have any follow-up questions.
Best regards,
Peter
Customer support service by UserEcho