• Welcome to the Community Forums at HiveWire 3D! Please note that the user name you choose for our forum will be displayed to the public. Our store was closed as January 4, 2021. You can find HiveWire 3D and Lisa's Botanicals products, as well as many of our Contributing Artists, at Renderosity. This thread lists where many are now selling their products. Renderosity is generously putting products which were purchased at HiveWire 3D and are now sold at their store into customer accounts by gifting them. This is not an overnight process so please be patient, if you have already emailed them about this. If you have NOT emailed them, please see the 2nd post in this thread for instructions on what you need to do

I Hope You're Ready For Stupid Questions: Chain Figures.

3dcheapskate

Engaged
(Or to be more precise, flexible chain figures for Poser with a separate bone for each chain link - where to put the start and end of each bone and other things like that I thought would be easy till I tried...)

After puzzling for a while about where the start and end of the bones for a flexible chain should should go, and how on earth you could possibly set joint parameters that would only include the mesh of the current (and all subsequent) links while excluding the previous (and all earlier) links, I recalled something from B.L.Render's Poser 5 Figure Creation book about making the bits that would cause problems as morphs to the base mesh (p132, fig 4.12).

I was delighted when I managed to get a three link chain test figure that used this method and worked.

In the meantime, while working on a scene for one of my stupid pictures (they keep me happy!) I came across some old Ajax easypose stuff tucked away in a dark cobwebbed corner of my runtime. It included some nice chains. Out of interest I loaded one and looked at it in the setup room - and was confounded. How on earth does it work ? I took a look at the CR2 too and can't see anything that explains why it works without doing what I had to...

chains.jpg


(Note: I'm not worried about the ERC / Easypose deltaAddDelta etc stuff, as I've happily played with that before... but that doesn't necessarilly mean that I won't be asking stupid questions about that too in the near future! ;o))
 
Last edited:

3WC

Engaged
Contributing Artist
Seems like you would have to use weight-mapping so that only individual links are affected by their own bones. I'm assuming this is Poser, but I'm more of a DS man, sorry.
 

3dcheapskate

Engaged
Nice suggestion, but the Ajax easypose stuff was made for Poser 4, perhaps earlier. I've also just (re)confirmed that it worked in DS3. So the solution didn't require any of this new-fangled weight-mapping. :)
(just for reference the chain I used was part of the easypose morning star which was in an old Ajax freebie along with a couple of easypose tubes, a triple-chain-mace, a skipping rope, and a devil tail. Can't find the URL now, so it may no longer be available. I think it was from Renderosity? ... long ago...)
 

Gadget Girl

Extraordinary
Contributing Artist
I suspect it was probably done with the grouping. Even if your geometry overlaps, your groups don't have to. What I mean by that is that if in the second set you showed where the geometry doesn't overlap, name your links something like link1, link2, and link3. So each link is a different group. The make sure your three bones are also called link1, link2, and link3. So when link3 is moved (assuming it's at the bottom of the hierarchy) only it's geometry will move. Does that make sense?
 

3dcheapskate

Engaged
Yes, it does. And I thought that's what I'd done. I ran through the process again from scratch with another three link chain. First, the OBJ, exported from Blender with a couple of manual edits to group names was like this:

# 'ThreeLinksTest-Normal-Edit.obj
g bone_3
v 0.246000 0.000000 0.000000
...
usemtl Chain
s 1
f 1 2 3 4
...
g bone_2
v 0.158000 0.000000 0.000000
...
usemtl Chain
s 1
f 61 62 63 64
...
g bone_1
v 0.070000 0.000000 0.000000
...
usemtl Chain
s 1
f 121 122 123 124
...


I imported that into PP2014, took it into the setup and verified that each link was in a separate group:
1 groups.jpg


Then I added the corresponding bones:
2 bones.jpg

and checked the twist and inclusion/exclusion angles (just tweaking a couple of things - there's no way I can set the inclusion/exclusion angles to do what I want):
3 twist.jpg

4 angles.jpg

And then I went back to the Pose Room and Y - rotated links 2 and 3 by 30 degrees - same super-flexy rubber chain problem as before, as expected:
5 Superbendy.jpg

I'm sure I must be missing something really obvious (probably hidden in plain sight!).
 

3dcheapskate

Engaged
Hmmm... talking of 'hidden in plain sight' that little "Affected Actors" button suddenly leaps out at me !

...but it doesn't seem to be the answer. For bone_1 it's greyed out, for bone_2 I can only select/deselect bone_3, and for bone_3 I can only select/deselect bone_1 !?

AffectedActors.jpg
 
Last edited:

3dcheapskate

Engaged
And where did that ThreeLinkChainTest1_SETUP node in the hierarchy (bottom left of the picture above) come from ?

Well, I know it must've come from the Setup Room... but what is it, and why is it there ? It looks like it's just a parent node for the IK chains and is itself parented to bone_1, but if I look at Andy's hierarchy the IK chains are a sibling of the Body?

(Told you there'd be lots of stupid questions! :)
 

3dcheapskate

Engaged
Found it - the way to make the individual links non-bendy ! From Kuroyume's CR2 Spec "bend determines whether or not to bend part when moved.", and in the easypose morning star bend is set to 0 for each actor, so...

foundit.jpg


Also "allowsBending determines whether or not mesh deforms or breaks when bending." It's in the figure section at the end of the CR2, but in the easypose morning star it's set to 1, so it doesn't seem essential. Maybe it's an easy way to turn bending on/off for all actors in the figure? Maybe it overrides individual actor settings? Or vice versa? I'll go have a play.

Still wondering about that ThreeLinkChainTest1_SETUP node in the hierarchy though...
 

3dcheapskate

Engaged
From a quick test:
- With 'allowsBending 1' each actor bends (or not) in accorance with its own 'bend 0/1' setting. Useful for combined chain and rope stuff.
- With 'allowsBending 0' none of the actors bend, so the individual 'bend 0/1' settings are ignored/overridden.
 

Gadget Girl

Extraordinary
Contributing Artist
Looks like you figured it out which is great. It also looks like I didn't quite understand where the issues was, but at least you got there. But I think I can help explain one or two of things you ran into though.

Hmmm... talking of 'hidden in plain sight' that little "Affected Actors" button suddenly leaps out at me !

Affected Actors is part of weight mapping, which you probably don't want for your figure. I don't really know legacy rigging very well because I work with weight map clothing for weight mapped figures, but here's my attempt to explain it. Legacy rigging works a bit like a ball joint on a Barbie doll. You can move Barbies shoulder in lots of ways, but it never quite looks natural because as the ball joint moves, it doesn't change her collar or shoulder, they move, but the stay the same shape. The skeleton's of any Poser figure are similar to Barbie's ball joint in that the joints and bones drive the movement of the figure, unlike in real people, where muscle drives the moment of the skeleton. Weight mapping is an attempt to make figures look like they are muscle driven instead of bone driven. Which is why for a hard inorganic object like a chain, weight mapping is probably not the way to go.

So with that out of the way, here's what Affected Actor's does. Let's take the right arm. Most figures will have their skeletons set up with something like rCollar, rShldr, rForearm and so on. The rCollar would be the highest in the hierarchy and in that sense the closest to the hip. When you use weight mapping, movement of a bone will always be able to affect the bone higher than it. In other words, when you move the shoulder, it will always be able to affect the collar to some degree or another so that the bends will look more natural. You have the option of also letting it affect bones lower down in the hierarchy. What that means is that when you move the shoulder, if you have Affected Actors on for the forearm, the mesh can be set to bend and distort. Or if you have it off, it will still follow the movement of the shoulder, but won't change the mesh.

I hope that makes sense. @Ken1171 knows this stuff better than I do, so if I made any mistakes I'm sure he can correct them.

And where did that ThreeLinkChainTest1_SETUP node in the hierarchy (bottom left of the picture above) come from ?

I mostly think I know what is happening here. Whenever I bring a prop into the setup room, I usually get something ending in _SETUP. I think of this as the sort of working figure, while I'm creating mine. In my experience it goes away when I leave the Setup room and my prop has become a figure.
 

Ken1171

Esteemed
Contributing Artist
Chains should be typically rigged with Ajax' EasyPose. What it does is setup chained ERCs (enhanced remote controls) along the bones of a chain to control them as a whole, or from any parts individually, affecting all parts before or after it. The way it works is by creating master controls where bending one bone controls the bending on all subsequent ones down the hierarchy. It can be done manually, but it's extremely tedious!! The more chained bones, the more tedious.

Once you have the chain rigged with bones, and you have adjusted the joints, EasyPose can create the master controls for you. I have used it to pose a long tail in my "Animal Anime Pack", where the tail has EasyPose master dials that allow, like the name says, easy posing it in any way you like with dials from the BODY. For example, you have a BEND master control that bends the entire tail at once. If you click any parts in the middle, you can control bend, side-side, twist, S-bend, etc from that bone on, or from the 1st until that bone.

EasyPose has been a standard tool to create ERCs for Poser rigs for things like whips, tails, ropes, tentacles and anything with a long string of bones. You can also use it to create different kinds of ERC on a regular figure skeleton. I think the last version was called "EasyPose Underground 2", and that's the tool you need for this job. It doesn't matter if the rig uses legacy rigging or weight maps, since it works on the joint master dials, and it doesn't care how it was rigged.
 

3dcheapskate

Engaged
Thanks for the replies folks. :)

Looks like you figured it out which is great. It also looks like I didn't quite understand where the issues was, but at least you got there..
No worries - I often find it difficult to specify exactly what the problem is, so I end up writing several long posts (often to help me get my thoughts into some sort of order), and on reading through them I suddenly realize what the actual problem is, and often find the answer myself!

Affected Actors is part of weight mapping, which you probably don't want for your figure.
That would explain why I don't see the "Affected Actors" button in Poser 9 !

I don't really know legacy rigging very well...
With a BJD there's zero deformation of any actors (which is of course what I want for my chain!) Old-style rigging does deform the mesh of parent and child actors, as well as the actor itself, with the inclusion/exclusion zones and twist bar (in the screenshots I posted earlier) along with spherical falloff zones controlling the extent (although I think see what you mean about the parent and child 'shapes' not changing). Weight mapping just gives you more precise, axis-specific control, than the old-style stuff. I think... :)

I mostly think I know what is happening here. Whenever I bring a prop into the setup room, I usually get something ending in _SETUP. I think of this as the sort of working figure, while I'm creating mine. In my experience it goes away when I leave the Setup room and my prop has become a figure.
Ah yes - it only seems to appears in the Hierarchy Editor in the Setup Room. Opening the Hierarchy Editor from the Pose Room I don't see it. So that makes sense.

There's probably an easier way to do it in later versions of Poser, but this thread might be of interest:
Sign In | Renderosity
Indeed it is ! I'd already realized that I want dual rotation centres and was going to ask about that (and lots of other stuff) once I'd solved the current (now solved) bendy-rubber-links problem.
If you use Cage's Chain Maker script to make a chain, the dual rotation centres are created for you, although I *think* that only applies to chains which are created along the Y axis.
Mister Looper and Friends
I think I've already got some of Cage's scripts tucked away in a corner - I think I recall playing with a chain making script years ago? Time to go for a rummage

Chains should be typically rigged with Ajax' EasyPose...
Yes indeed! But being an impecunious 3D hobbyist my method of adding ERC involves... a spreadsheet ! Nowhere near as easy as EasyPose Underground, but rather less tedious and error-prone than a text editor.
 
Last edited:

Ken1171

Esteemed
Contributing Artist
If I remember this right, EZPose will just ask you to enter the name of the first and last bone in the chain, and it does the rest automatically.
 
Top