Retarget animation

Hi all, I made a Tool script to retarget animation between skeletons (or any objects).
It copies the rotations from a target object and applies an orientconstrainttag to the selected object.
For identical hierarchies, you can retarget the whole hierarchy all at once.
Often it's usefull to also link the position of the roort object, so I made that option too with a pointconstrainttag.
It is possible to retarget partial animations or combine parts of different animations.
You can keyframe whatever you want in your new animation and finetune…

The intention is to make it more easy to work with animations in Cheetah3D.
Through other software or motion capture data via FBX import and retargeting.

I’m thinking of mixamo, Cascadeur, mogen, tdpt,…

I hope you enjoy it!

(Edit: newer version in later post)
 

Attachments

  • retarget.js.zip
    1.4 KB · Views: 84
Last edited:
I would like to try it, but when I select the script, Cheetah crashes (in version 7.3.3 and 7.5.2). I put it in the folder ...>Scripts>Tool. I have no idea about programming. Is there anything else to consider?
 
I would like to try it, but when I select the script, Cheetah crashes (in version 7.3.3 and 7.5.2). I put it in the folder ...>Scripts>Tool. I have no idea about programming. Is there anything else to consider?
I’m very sorry to hear that, I’ll look into it, but I can’t promise anything. I frankensteined this code together with some help of ChatGPT 😜
It works in my old version of cheetah (I’m at work now, have to check later which version I’m using)
 
It seems like a checkbox gave some problems, so I modified it to a normal button.
If you could please try the attached version, it will be very much appreciated!
 

Attachments

  • retarget 2.js.zip
    1.5 KB · Views: 88
Thanks, now it works in both versions!
I did a quick test. It doesn't look quite perfect because they are two slightly different rigs, and then of course you have to do a bit of tweaking (I linked the controllers, not the bones), but basically it works very well and easily!
And with a whole hierarchy it's much faster than doing everything manually, of course.
I still need to test it, but I think it could also save a lot of time in creating the controllers, especially with the fingers.
Thanks a lot for sharing!

retarget_test.gif


It is possible to retarget partial animations or combine parts of different animations.
You can keyframe whatever you want in your new animation and finetune…

I must confess, though, that I'm not exactly sure how you mean this. Combining by multiple tags with different targets? And what exactly is keyframed in the new animation when it follows the targets of the first one? Especially with an FBX where every frame is keyframed. Well, I guess I need to think about it some more and test it. :)
 
Thanks, now it works in both versions!
I did a quick test. It doesn't look quite perfect because they are two slightly different rigs, and then of course you have to do a bit of tweaking (I linked the controllers, not the bones), but basically it works very well and easily!
And with a whole hierarchy it's much faster than doing everything manually, of course.
I still need to test it, but I think it could also save a lot of time in creating the controllers, especially with the fingers.
Thanks a lot for sharing!

View attachment 39496



I must confess, though, that I'm not exactly sure how you mean this. Combining by multiple tags with different targets? And what exactly is keyframed in the new animation when it follows the targets of the first one? Especially with an FBX where every frame is keyframed. Well, I guess I need to think about it some more and test it. :)
how to use that?
 
how to use that?
Hi,

If you have a rigged character and you import an animated character (import via FBX for example), you can copy the animation by running this script.
It copies the animation from a chosen part in the script UI to the selected part.

I’ll try to make an elaborate example later…
 
Ahh, I think I understand now what you mean by "combine"! Not combining different parts of an overall animation, but combining different rig parts of different animations in one rig, so for example the facial animation of one character (if created with bones, of course) and the body animation of another. Or just the hand...
I see - forget about my question. :giggle:
 
Ahh, I think I understand now what you mean by "combine"! Not combining different parts of an overall animation, but combining different rig parts of different animations in one rig, so for example the facial animation of one character (if created with bones, of course) and the body animation of another. Or just the hand...
I see - forget about my question. :giggle:
Apologies, I didn’t find time yet to make a tutorial, but yes, that was what I intended :)
 
Back
Top