What is the best way of rigging this mechanical object?

CodeferBlue
polycounter lvl 8
Hi Polycount. I'm very new to rigging and I've been looking around for a while now of techniques I can use to properly rig this machine I'm working on. I've found a lot of mixed information and I'm definitely doing things wrong.
Here is the machine. For now just trying to work with one arm, will be adding 3 more once I know the workflow:

Once I've created the bones, painted the skin weights and created an IK, I get undesired results such as the hinges of the arm misaligning when the IK is moved:

Its not just the hinges, but all the parts misalign when the IK is moved.
Clearly I'm missing something and doing something wrong. So what would be the best way of approaching this? Appreciate any help.
Here is the machine. For now just trying to work with one arm, will be adding 3 more once I know the workflow:

Once I've created the bones, painted the skin weights and created an IK, I get undesired results such as the hinges of the arm misaligning when the IK is moved:

Its not just the hinges, but all the parts misalign when the IK is moved.
Clearly I'm missing something and doing something wrong. So what would be the best way of approaching this? Appreciate any help.
Replies
-
I'm not a rigger by any means, but I believe via an IK rig, assigning joints too an armature (which I think is missing here) allows for control of parented constraints enabling animation as expected. Basics on how this would work, an example in Maya.
-
sacboi said:I'm not a rigger by any means, but I believe via an IK rig, assigning joints too an armature (which I think is missing here) allows for control of parented constraints enabling animation as expected. Basics on how this would work, an example in Maya.
-
'Joint', is just a Maya descriptive term denoting a 'pivot point' so might be helpful to clarify what you're using to rig the model for more specific advice.edit:Curious, if your base meshes are parented too the individual bones?
-
sacboi said:'Joint', is just a Maya descriptive term denoting a 'pivot point' so might be helpful to clarify what you're using to rig the model for more specific advice.edit:Curious, if your base meshes are parented too the individual bones?
-
I use C4D and Unity but the basic principles are the same. Separate the pieces and make sure their axis are facing the same direction and are snapped to their proper rotation points. I find it easier to apply the joints when the pieces/parts are in line and not bent in place.
-
3DGolum said:I use C4D and Unity but the basic principles are the same. Separate the pieces and make sure their axis are facing the same direction and are snapped to their proper rotation points. I find it easier to apply the joints when the pieces/parts are in line and not bent in place.
-
Have you tried exporting as an obj sequence or an alembic file to bring into Unreal?
-
By the way were you following a tutorial, at least an authored complete informative workflow, from 3D app then export to engine?
-
It looks like you're using maya. For a mechanical thing like this I don't paint skin weights for most of the mesh. You can instead assign weights using the attribute spread sheet. This is more exact as you can set the weights to be 100% to each joint where painting weights often leaves weights only 99% assigned to one joint. -
sprunghunt said:
It looks like you're using maya. For a mechanical thing like this I don't paint skin weights for most of the mesh. You can instead assign weights using the attribute spread sheet. This is more exact as you can set the weights to be 100% to each joint where painting weights often leaves weights only 99% assigned to one joint.