- Home /
Maya model deformed when Humanoid Avatar is created
Hello
I am having some trouble importing my Maya model and animation into Unity 4. I have managed to make it import correctly as shows below, with all the animations in the file playing well in the preview.
The moment I go into the Rig tab and assign it a Humanoid type and select Create For This Model, Unity seems to recognise all my joints ok but it deforms the mesh like below:
A few components of the model get shifted (eyes, ponytail) and when I preview the animations I can see that all the IK movements of the arms are offset from what they should be. This happens both with the forced T-pose shown above (which was not my bind pose) and when I reset the pose to its bind one.
Has anyone had a similar problem or has an idea of what may be causing it?
Thank you very much!
Answer by blazingangel187 · Dec 14, 2013 at 12:57 AM
Ok so it seems that the mad deformations were linked to anything that had a constraint in Maya. Some port of the mesh were not bount but simply constrained to certain joints. Unity doesn't seem to like it so I ensured that everything was bound and ALSO that all the joints were connected to each other and therefore children of the main COG joint. Having chains that are separate from the main skeleton is also something that Unity doesn't seem to like.
In any case the Generic rig works very well as is, so I didn't need to use the Humanoid mapping. You can create an Avatar Mask, attach your avatar skeleton by browsing it, the mask will have a list of all the joints present in the skeleton, you just need to tick or untick the joints you want to layer and that you will be able to use the layers in the Animator, without the Humanoid rig.
Answer by meat5000 · Dec 08, 2013 at 08:28 PM
Gotta love Mecanim ;)
Happens to me a lot. The muscle groups get pulled around. Simply edit the Avatar and click the muscle groups tab where you should be able to sort this out.
Half the time my humanoids end up looking like racing cars and spaceships!!!
Lol, I'm glad to see I'm not the only one. An interesting fact is that updating from Unity 4.2 to 4.3 actually improved things a bit, in a way that it lets you revert all the shifting that happens upon creating the avatar. However when the animations play everything gets shifted again, in weird ways that aren't really obvious from the rig window, so that changing the muscles doesn't really help.
I am actually fairly happy with the Generic avatar, I just liked the humanoid rig for the fact that it allows for layering of the animations. DO you know if I can still create a mask and animate different layers without going through the humanoid avatar step?
You can do all those things with a Generic rig, also :)
Thanks for your response! I can't quite figure out how to create a mask to target only certain joints, without going through the humanoid rig step which allowed me to place may joints in that man shaped UI... Any idea? :)
Create the mask first, in the project explorer. In it you can select which skeleton you want to use. The picture based mask is humanoid only at the moment but you can define a dopesheet and animation overrides.