My goals are to have a system like MakeHuman using only Blender’s tools for the morphing of a base mesh character while simultaneously morphing different levels of detail meshes of that character. Also I need a way to move the bones of an armature with the changing joint positions of the base mesh. This would allow me to have the perfect skeleton pre-loaded with animations for my newly morphed character.
My solution for the bones is the following:
Note: Parent child relationships will not survive this process, so any animations you do will have to be done without them, either that or after you’ve created your unique character you will have to go back to the armature and re-parent everything.
- Parent base character mesh to armature and weight paint it so everything moves well.
- Make all the animations you need for the armature, as well as all the bone constraints you need (not all bone constraints will make it through the process).
- Un-parent the character mesh and delete armature modifier.
- Break the armature up into individual bones. You can do this by just duplicating the armature and deleting every bone but one over and over again until you’ve got all the bones in the original armature as separate objects.
- Remake the bones origin at the base of the bone where it should be.
- Create vertices in the character mesh that share the same position with each bone origin, i.e., if you had 23 bones in the armature you should have 23 vertices in the character mesh that are in the same place as each bones origin.
- Vertex parent each Armature(individual Bones) to the vertex they share the same space with.
- Create a shape key library in the character mesh, making sure that the vertices the bones are parented to get moved along with the joints in the mesh. That way the bones will be positioned correctly when you’re done.
- Mix the shape keys to get a “unique” character.
- Join all the bones to make it a whole armature again. Try to join them all to a bone that doesn’t have any bone constraints on it, because you can keep some bone constraints throughout this process.
- Un-parent the newly created armature with all the bones from the character mesh.
- Parent the character mesh to the armature using the option “with empty groups”. Then your done.
Try my test file and follow the instructions in yellow. Tell me what you think I’m doing wrong, or how to better do it, thank you.