I’m very new at rigging, and i want to make some MMD (mikumikudance) model.
i import it official model to blender and follow it armature system. everything went smooth. i was able to come to this state
the model is completely rigged and weight painted.
but, then i realized that the official model mesh is parented to it’s armature. I follow it too and came to this result
armature movement and rotation is not followed correctly by mesh.:spin:
how to make it correct?
edit: i think it should be skinning instead of rigging, sorry for my bad english
edit2: i change the pictures
OK, you’ve got me confused here, perhaps because I have never heard of an MMD.
If I understand this correctly, you’ve imported a character model that comes in with an armature already, and you’ve made a new Blender armature for the model, but the model is still parented to the old imported one? If that’s true, is there a reason you can’t use the armature you imported?
In any case, just judging from the pictures above, the armature you’ve posed is not deforming the mesh, which means either:
- the armature is parented to the mesh, but the bones you’ve posed are not deforming any vert groups
- the armature you’ve posed is not parented to the mesh
Select the armature in object mode and move it around. If the mesh doesn’t move, it’s the former answer. If the mesh moves, select the armature in pose-mode, then select the mesh, then hit CTRL-TAB. Select a bone - if you get no weight-painted areas, it’s the first answer. There’s more, but try the above first.
@eku no! i don’t import anything from the official file! I made the model myself, then in the rigging process, i “look” at their model. I made the armature by myself (in term I place every bone, add armature modifier, naming them, configuring the parent children system, putting some IK, painting weight paint with aid from bone heat).
and then it works correctly! (1st image)
so it just like ordinarry character skinning.
but unfortunately?!! I forgot to parrent mesh to armature like the official one did ( i copycating everything because i actually doesn’t understand the program, but it seem very strict in rules, and i can’t find the written rules or it written in japanese)
so after everything settled i the select mesh, then select armature, pres Alt-P, make parent, armature, don’t make group (v group, because it has had v groups), finished.
then i check in pose mode, and it just not come out nicely (2nd image)
so, it is weight painted and the bones deforming v groups.
i just don’t understand why there are a difference when armature is parented to model and when not.
and how to avoid them.
Ah, I think I understand now.
OK, does the mesh move when you move the armature while it’s in object mode? Check that first. (Don’t actually move it permanently, just select the armature, hit G, move the mouse around, but don’t click to confirm.) We have to make sure the mesh is indeed parented to the armature. The next steps might get more complicated…
(And I don’t pretend to be an expert in this area, so I’m going to be careful not to suggest anything crazy here. If there’s someone checking into this thread with better info, by all means join the discussion!)
You likely have 2 armature modifiers on your character. One which you applied manually while weight painting, and another one from parenting the mesh to the armature. Just remove one of them and it should behave properly (you will first have to click ‘make real’ most likely). Right now the mesh is being deformed by both modifiers, producing an effect called ‘double transformations’, the first modifier deforms it - then the second one does it again in the same way.
If you wanted to parent your mesh to the armature object without creating an additional armature modifier, choose ‘parent -> object’ instead of ‘armature’ to parent the mesh object to the armature object.
I hope that helps
@eku yes, the mesh follow armature in object mode, but it ruins the pose mode. because i use make parent to : armature
@feelgoodcomics: thanks bro! you save my life. i parent the armature to mesh then selecting make parent to object, and it works perfectly!
ok so this is the summary: (CMIIW)
if we have one mesh, then we make the armature. latter we assign the armature to the mesh with modifier. weight paint it. everything set properly. then if want to parent the mesh to armature, we select the mesh first then the armature as active object (pink) then Ctrl-P, Make Parent to: Object instead of Armature because it will cause double transformation.
thank you everyone!
I’m glad it’s working now :yes:
The reason the ‘official’ character was likely parented to the armature was because they used ‘parent->armature->bone heat’ right from the start. This will parent the mesh to the armature object, and create default weight maps from ‘bone heat’ which can then be repainted/adjusted manually. It is less work that way, instead of painting the weights completely yourself, and then parenting… it is usually nicer to start with default weighting and just touch it up a bit
Also, another advantage of working this way is the character can be repeatedly re-parented with bone heat to test the armature while changes are still being made to the model. I will usually build the armature and the model at the same time, and frequently test them to see how the deformations are working… which allows me to catch potential deform problems before the modeling stage is even complete!
hmm, it opens my eyes.
thanks for sharing feelgoodcomics! I learn a lot from this!