How to use Mixamo animations with different Models?

I have custom Humanoid models and I want to use them with my models.

In Unity, you can “retarget” animations from any humanoid model to any other humanoid model.

1 Like

What about Genererics?

Generic “re-targeting” only works if the Armature on your custom model 100% matches the Armature in your animations. The bone names need to be the same and everything.

*re-targeting in quotes because there really isn’t any re-targeting for generic. It’s really just a case of “Oh this animation just happens to work for this model too because the animation clip can’t tell the difference”. I think Unity planned to add a full generic re-targeting system to mecanim back in 2015 or so, but never got around to it.

Are there any related posts or webpages about this? I’m curious as I’m working on something similar. Thx :slight_smile:

Not that I know of.

If you want to implement your own generic re-targeting, I imagine you’d need to implement your own system for mapping each bone on one model to the corresponding bone on the other model. One difficulty is that when two models in the same pose, the default orientation of a bone on one model might be different than the other.

I can imagine multiple approaches to applying the animation too, but I’ve never attempted this myself. At runtime you could play the animation of the source model (with no mesh renderer so it’s invisible) and write a script that copies and adapts the rotation of each bone to the target model every frame. You could also write a script to sample animation clip over time, essentially writing your own animation system. Instead of a real-time solution, I guess you could also write script to sample all of your animation clips and render-out another set of animation clips adapted especially for the target model.

Edit: also, it looks like there’s something on the asset store that may have some implementation of generic retargetting:

I don’t own this package so I can’t recommend either way.