Sometimes when you importing a model with the blendshapes unity lost their names and it appear like “no name 1”, “no name 2”, e.t.c. I read some topics with advices to downgrade the fbx version to the 2011. Doesn’t help in my case. I checked it with Maya 2016, 2016ext2, 2017 + Unity 5.3, 5.4, 5.5 + all .fbx from 2010 to 2016/2017. Also I used direct import of .mb/.ma files with the same result. Here is what I found:
I create a cube model with 4 blendshapes. There is a code from the .ma model, ascii code represent the blends creation part.
setAttr “.tgdt[0].cid” -type “Int32Array” 4 0 1 2 3 ;
setAttr “.aal” -type “attributeAlias” {“q1”,“weight[0]”,“q2”,“weight[1]”,“q3”,“weight[2]” ,“q4”,“weight[3]”} ;
While the index in array grows from 0+ it works fine. All the names are exported properly.
If you delete a blendshape from end of the list or add some new blendshapes it still will be fine. Everything is ok while the blendshape index grows in right order. But if you delete a first blendshape and the index order will be broken - unity names will be broken from this point.
Here is how the .ma file looks now, when we delete the “zero” blendhsape:
setAttr “.tgdt[0].cid” -type “Int32Array” 3 1 2 3 ;
setAttr “.aal” -type “attributeAlias” {“q2”,“weight[1]”,“q3”,“weight[2]”,“q4”,“weight[3]” } ;
If you merging blendshapes or deleting it from the middle of the list you will get a mess with the indexes and it will be a bunch of “no name” blendshapes in unity:
setAttr “.tgdt[0].cid” -type “Int32Array” 5 1 7 4 5 6 ;
setAttr “.aal” -type “attributeAlias” {“q2”,“weight[1]”,“q5”,“weight[4]”,“q6”,“weight[5]” ,“q7”,“weight[6]”,“q3”,“weight[7]”} ;




