View Full Version : Mechanical object rigging: bones over objects?

09-17-2015, 07:24 PM
How common is it to use Bones when animating a mechanical, rigid object, such as a traditional robot, or even a realistic assembly-line robot?

I'm making a very VERY simple object, and for the one flexible bit (a tiny cord or wire), it would most likely be a bit easier to use Bones to animate this otherwise wholly rigid structure, but then I think I'd need to pretty much do all the rigging with Bones, with which I'm not really all that comfortable-- I hear cries of "Learning Opportunity, doofus!" from the peanut gallery.

Anyway, just wondering. There seems to be a lot more tools for dealing with bones, but it almost seems like an unnecessary step for object that are 99% rigid.

09-17-2015, 07:44 PM
It's pretty common to use bones, just use 100 % weights on the different parts so they stick to the bones and don't bend like rubber.

09-17-2015, 08:14 PM
Lino does a tutorial here: https://www.lightwave3d.com/learn/article/lightwave-115-rigging-mechanical-objects-with-genoma/

09-17-2015, 09:26 PM
If you put all your mesh into one layer it makes swapping out the geo very easy whereas if you have separate mesh files it's more cumbersome.

09-17-2015, 09:27 PM
If you put all your mesh into one layer it makes swapping out the geo very easy whereas if you have separate mesh files it's more cumbersome.

09-18-2015, 05:01 AM
If you put a WeightMap on the cord but not the rest of the mesh, in the bone's Properties panel you can set the bones to only affect the weight map and rig the rest of your scene using objects.

Having said that, I always use bones for rigid, mechanical objects. As each piece of the object is modeled, I create a Weight Map named for that piece and set the mesh for that piece to 100% on that weight map, making sure only that mesh is selected / visible. I try to model with all the pieces vertical and oriented down the Z axis, if possible, so their pitch channel is the primary joint bending channel. After the modeling is complete, I use Add Points to put points at each joint, CTRL-P to create a curve, then Setup=>Convert Skelegons to create skelegons. Once the mesh with skelegons is sent to Layout, use Setup=>Convert Skelegons to create the bones, then go through each bone, rename it (ALT-N) to match the appropriate part and set its weight map in the Properties panel.

It sounds more complex than it is. Once you get used to the workflow, though, it's pretty easy to set up. I've used both IK and FK, and for simple mechanical objects, I like using a "controller null" with forward kinematics, whose channels (X,Y,Z,H,P,B) are mapped to the various bone motions using Expressions. Here's a sample scene where the ArmControllerNull H&P controls the upper arm, B controlls the forearm, and the HandControllerNull P & H controls the wrist and finger closure, respectively.


09-18-2015, 01:14 PM
Which items have the Expressions applied? Durst if I can find 'em....

EDIT: btw, this is one area where C4D kicks LW's #ss up an down the street: you have to become a g.d. spelunker to reverse-engineer scenes in LW, whereas in C4D it's all right there in a neat graph. :devil:

09-18-2015, 02:20 PM
Which items have the Expressions applied? Durst if I can find 'em....

There are expressions on the Pitch channel of the primary bones except the "Shoulder" bone, which has an expression on the Heading channel. Yes, it'd be nice if the E (envelope) box was highlighted differently if there's an Expression on the channel, or some other indicator.

In general, though, you can get into the Graph Editor (CTRL-F2), select the Expressions tab, use the Expressions pulldown to see all the defined expressions, select one and then use Get Channels to load the channel bin with all the channels that expression is applied to. When a channel has an expression associated with it, it will have a bullet-mark next to it in the channel bin. So, you can also get into the Graph Editor and use down-arrow to select each subsequent object / bone, and look for the bullet marks.


09-18-2015, 02:46 PM
See, I was fouling myself up with FILTER STATIC CHANNELS (which doesn't really do what it says on the label (http://forums.newtek.com/showthread.php?148109-Graph-Editor-quot-Filter-Static-Envelopes-quot-not-really-suggested-revision)), and since there's only one keyframe on those driven items, the channels weren't appearing AT ALL, as is correct. But damnably confusing, since "they are obviously moving!!!!11!". :jester: :cry:

Some additional indicator in the lower box (whatever it's called) would be good, both on the item AND the channel in question: IOW, if ANY of an item's channels are driven, constrained, or modified, an asterisk or some other indicator would appear beside the item when it is collapsed. Having the indicator ONLY (?) on when it's already in the channel bin is insufficient.

09-18-2015, 03:18 PM
(here's my feature suggestion as submitted to LW3dG):

EASY: clearer indication of channel modifications in the GE

I >believe< that one has to at least open an item in the Channels Tab of the GE to determine if an ITEM'S channels have either an Expression, a Modifier, or a Constraint applied to them. Even when the Item is expanded, the channels do not have an indicator in the list, although they do in the Channel Bin. BUT, these are two separate issues.

For clarity, especially when reverse engineering a Scene, it would be VERY helpful if BOTH the individual channels when expanded AND the Item itself when collapsed, sported some indicator that "here there be Expressions/Modifiers/Constraints". (EMCs)

Currently users, IIRC, have to at minimum, get a channel to the Channel Bin to see any indicators of EMCs. A signal that THIS item has an EMC somewhere, and then when opened, that THIS channel has one, without being forced to use the Channel Bin to determine this.

In fact, I think a little E/M/C beside the channels when expanded would add a lot of clarity. There's plenty of room in the Channel _tab_ list.

And, I made a mockup:


(EDIT: oooo, some very bad English in there, but I think the point is obvious.)

09-19-2015, 01:06 PM
I use Add Points to put points at each joint, CTRL-P to create a curve, then Setup=>Convert Skelegons to create skelegons.

the new line pen might be better to use than the add points command nowadays, you can snap it to whatever you want... center, vertex, edge etc..and it draws a line for you, no need for additional shortcuts and commands to keep in mind.
And similar...by selecting one edge and press the connect shortcut "l" It will divide the edge with a point, or if selecting two opposite edges and run connect, it creates a line instantly.

The connect tool starts to be become one of my favorites nowadays...if selected polygons and running connect several times, it acts like the julienne tool but with individual cuts for each time.