Picking a BONE with Unreal's Animation Retargeting


Haha I only kid... but for build v2 I was tasked with removing the old UE4 Mannequin and replace him with our new model, Zazi. When taking on the task I thought to myself, "this is easy, I'll be done in a matter of hours." Man I was completely wrong! Unreal doesn't import everything if you try to import a .obj model. The textures and the skeletal mesh data isn't provided when you do that. Luckily our model came with a .blend file with the rigged model, or else I would've needed to rig it myself. After I exported the model, I needed the animations I got from Mixamo.com to fit onto Zazi and that should be a simple task but the problem is Zazi's character model is short and stocky. When bringing over the .fbx files from Mixamo the skeleton would cause Zazi's mesh to distort and disappear. We can't have a choppy looking player character! Whats the fix?

The most important thing with Mixamo.com animations is... Get the export settings correct! Export with the skin and in the FBX Binary format. Unreal doesn't let you import a model without the skeleton, so you need to have the skin included for it to detect the skeleton. After importing a skeleton, we get to move onto the "fun" part: RETARGETING. The general idea is UE has it's way of mapping out the different bones in a skeleton ... however, sometimes you want to reuse a skeleton with a different animations. In my case I wanted the map Zazi's original skeleton with the animation's skeleton. Luckily UE does this for us! To do this you need to go and open the skeleton file and open the retarget manager and bone by bone map them from our model into UE's bone hierarchy:



You can use the Auto Map feature but unfortunately there is no standard naming convention that lets you quickly map it... that would've saved A LOT of time. After remapping both your model and mixamo's animation skeleton head over to the preview scene settings panel and click apply to asset. here:

now we can move onto retargeting our animation assets. On the mixamo animation, right click and select Retarget Anim Assets -> Duplicate... now in the menu that pops up we select our target skeleton (Zazi) and click Retarget.

Ok that was a lot of steps... take a quick breather. Now in cases where the animation skeleton and model skeleton's proportions are correct, this should just work out of the box.  But in my case Zazi's proportions are shorter and stockier. That causes a problem with the mesh distorting or not even showing up in the preview. UE has a fix for this too! Since this post is getting really long you can follow along here: Animation Retargeting. After setting this up, the mixamo animation skeleton should now fit to scale with you model's skeleton!

It's a pain but you need to sit down and retarget bone by bone to make sure everything fits correctly. Unfortunately with Zazi's skeleton, the original artist rigged him in a  very unconventional way, that took the retargeting step forever to complete. In hindsight, I could've uploaded the file onto Mixamo.com and uploaded Zazi's model there and then use that skeleton instead of the default one....uggggghhhh :facepalm.


author: Munnie Singh

Get ASTRO SHIPPING CO.

Leave a comment

Log in with itch.io to leave a comment.