0
$\begingroup$

I created this simple character out of multiple objects, and then rigged it with a basic skeleton (just normal bones, no IK or constraints or anything yet).

Image of a low-poly feminine base model, made out of distinct objects (with one for every bone)Image of the same character, with bones visible, performing a basic pose

I made it using multiple parts because I've tried to rig very-low-poly characters as a single mesh before, and the weight-painting and deformation is always hell. But... Blender's support for this kind of workflow is really lacking.

Mirror modifiers don't work on sub-objects (you can give them modifiers, but modifiers from the parent won't apply to them and parent modifiers certainly don't apply at the object level rather than the mesh level), so to get the second half I had to make linked duplicates of the first half and then scale them by -1 with my pivot at the origin. I had to parent each object to its corresponding bone manually, and there didn't seem to be any way to automatically symmetrize it either.

Now I've come to the few parts of the model I'll have to weight-paint, like the thumb and hand.

Image of the hand and its skeleton, showing the upper fingers on the mesh not following the bone

I've got all my objects named following the Blender bone naming symmetry convention. But even with that I can't seem to figure out how to symmetrize weight-painting from one hand to the other. I'm also somewhat worried that using linked duplicates is going to come back to bite me somehow, but it's the only way to make sure that the sides stay symmetrical if I make any modifications later. And in general, I'm worried that when I come back to add detail to this model and make it from a doll into a proper character, issues like these are just going to keep popping up.

Is working like this and constantly fighting against Blender's built-in workflow a good idea? Are there any tutorials and tips on how I'm supposed to do this that aren't just "do everything manually"? How do I deal with weight-painting? I know there's a thing called a "Vertex Group" -- would that help here at all? Finally, should I just give in and turn all these different objects into a single object with... I'm not sure if it would be multiple meshes or a single disconnected mesh, but a single object either way, but you get the idea.

Anyway, I could really use some advice, before I go into adding details or making a more complicated rig.

EDIT: To anyone looking to do somebody similar: I used Ctrl-J to merge the separate objects into one, applied a mirror modifier, and then used vertex groups to assign each section of mesh to specific bones (specifically, I used auto-weights to create the groups, and then removed all vertices that weren't part of the desired section of mesh by pressing Ctrl-L (select linked) Ctrl-I (invert selection) then Remove.) Seems to be doing alright.

$\endgroup$
2
  • 1
    $\begingroup$ Hey, I added an answer already, and I hope it's useful for you, but I'm going to start a close vote on this because the the central question that I can see is, "Is this a good idea?" and that's a pretty subjective question. More subjective than is generally appropriate for SE sites. You could rephrase this into a couple decent, objective questions; the first one would be, "What other workflows could meet my modelling and animation needs, as described below?" And if the answer is "None", then the next question would be how to get symmetrical weights. $\endgroup$
    – Nathan
    May 22 at 3:58
  • $\begingroup$ @Nathan Understood! Your feedback has been helpful regardless. Thank you! $\endgroup$
    – a52
    May 22 at 6:11

1 Answer 1

2
$\begingroup$

Is working like this and constantly fighting against Blender's built-in workflow a good idea?

No, it's not.

There are times when it seems like a mirror modifier won't cut it. I've run into a few myself, and I'm familiar with the workflow you're describing.

But what you're describing can be done in any number of different ways, all of which are easier than what you're doing.

First, single object does not mean single mesh. You can join all of these objects together. They will remain separate meshes, inside the container that is the shared object. So long as you're using an armature modifier, rather than bone parenting, this works fine.

Second, even if you do decide you need separate objects, you can 1) designate a mirror object at the center of the world, so that your objects' transforms don't matter for the mirror; 2) copy modifiers from actively selected to all selected. I do this via ctrl L in object mode, but of course interfaces vary, so I can't tell you that will work for you; the operation appears to be called "Link/Transfer Data".

Obviously, symmetrical weight painting is not an issue if you're using a live mirror modifier.

There is one further option, which might seem crazy, but it's sometimes a good one, which is to use geometry nodes to instance your meshes. Joining multiple objects into a single object is a total breeze with GN (and makes me wonder why we didn't have a "join" modifier ten years ago, it's that useful.) That gives you a single object, and you can follow your GN with a single mirror mod and a single armature mod and whatever other modifiers you want. You can even combine bone-parenting and armature deformation for what is ultimately a single object by joining objects after they've been transformed/deformed. Geometry nodes end up being a Swiss army knife for me, just full of useful tools that you can use for creative problem solving, and it's worthwhile to get a little experience with them if you have none yet.

$\endgroup$

Not the answer you're looking for? Browse other questions tagged or ask your own question.