Most efficient way to use bendy limbs in built in character rig


#1

Most of the info out there on bendy limbs in c4d seems to refer to custom built, offered for sale, or otherwise different items than the built in bendy option in character builder in r20.

For the built in rig, it appears to not be automatic, but rather to require that the plates on either side of the bendy joint be moved in addition to increasing the bendy slider. Doing so, though, doesn’t allow the limb to return to a straight position once the bend is completed without also moving the plates back, or else it ends up like this:

If you instead move the plates to the ends of the bones (hip and ankle in this case, it works ok using only the knee control, but none of the built in functions or other controllers engage the bend (foot roll, foot controller, etc)

Have I missed some simple way to use the bend without having to animate either the plates or the bendy slider back and forth in addition to every move? Seems like there must be a more automatic way to engage it.


#2

the advanced biped just works that way. you have to animate the bend controllers to get the bend.

do you have cineversity access? if so, there’s great tutorials by bret bays on creating bendy limbs using the “c-curve method”, which i prefer.


#3

Yeah. That’s why I was asking. I saw that tut which seemed simple and intuitive, then assumed it would be similar with built in tools with a single simple bend % slider… which it LOOKS like the build tin one has… though it does nothing without the additional controller automation.

Thx.

It’s been a good learning experience, but far too time consuming rebuilding this rig over and over.

I never did get the joint reorinentation to work properly on the hand built rig. Could just be dyslexia overload, but I gave up from exhaustion, not lack of trying. As a result, I do now also have a rig built with bendy options using advanced biped template for built in rig.

Built in rig seems bizarrely complsx to me in terms of full hierarchy, and bendy option adds all the sub-bones for bends, etc.

If I wanted to get up and running with C-option as quickly as possible, what would you do? The weighting is no big deal. I prefer a pretty straight forward heavily smoothed (and then normalized) setup, so the weighting doesn’t take long. The time consuming bit is lining up all the joints with my character.

Just add it to existing bendy built-in rig? Strip it down and add c-curve? Something else I might be missing about reorientation for the original scratch built rig? Just looking for quickest path forward. Already had to do a second manual retopo on head, and it’s put me way behind schedule.

thx.

I like the eva character, btw. Might have missed it in quick peek at profile, but do you have a public facing portfolio?


#4

trust me, modifying a complex rig like the advanced biped in a way like this is just about as much effort as building a new rig from scratch.

the quickest path is to just use the advanced biped as it is and animate the bend controllers to get your bend. not that much extra effort.

or use my character object rig preset, which uses the c-curve method. just download it, create a folder called “characters” in your c4d library folder and put the file in there, and it will pop up in your character objects dropdown list.


#5

Yeah, that’s the impression I got… that hacking the built in rig I already don’t fully understand is likely to lead to unintended consequences and time wasted.

I wish I’d come across your rig first. Looks like a better fit for this character in several ways. Question, though… He currently has separate eyeballs and eyebrows, but his lips are welded shut. What’s the minimum path to a basic mouth function? Unweld the lips, create mouth cavity, and add a couple rows of teeth? Or is it significantly more complex? He’s already got topology that should work in general for mouth deformations.

Also:
Is there any shortcut I’m missing to snap all the bones to another existing skeleton?


#6

no, exactly that, create a mouth cavity, add teeth, maybe a tongue and that’s it.

tbh i never tried to snap to existing joints with the character object in pose component mode, doesn’t regular object snapping work? in theory it should. but tbh, posing components for a humanoid rig usually only takes a couple of minutes.

if you want you can show me a screenshot of your mesh topology before you start any weighting, maybe i can give you some pointers if you need to add or better get rid of any edge loops for good deformations.


#7

Snapping should be easy enough. I may have just had too many active components, so it was snap happy.

I’ve backed myself into a bit of a corner. I cobbled him together knowing nothing about animation, so he has all kinds of high poly details, and I wasted 2 weeks last time I went down the rabbit hole of doing manual retopo, high to low poly workflow out to zbrush, modo, etc… then he changed and all that stuff is no good anymore. I ended up faking it second time around by taking my old retopo, reshaping it in c4d, and shrink wrapping it to SUPER high poly all tris original head. Result works, but details disappear if I use less than 3x sub BEFORE shrink wrapping… which means they need to be baked in… unless I do the whole projection thing again… whcih I’ve already forgotten how to do.

Anyway, here is lowest version of head topo:

And here’s the minimum detail level I’m happy with (baked at 3x sub prior to shrink wrap.). Hair is also high poly, but formed via volume mesher. Not sure how else to preserve the wavy geometry



Speaking of unfortunate, there’s also the very high poly (and tris) shoes and mid-poly arms which were (very poorly) stitched together from scavenged parts.) Both clearly need to be retopo’d, but I’m just out of time. Both work well enough to get by for now when animated, though the poly count on the shoes is clearly not ideal.

At least the body was formed since I read up on animation basics. Shirt, pants, belly separate but slightly overlapping objects:

Problems there just come down to weighting. Because he’s so fat in the middle, hip deformations are tough, but at least I can start out low poly and add sub post rigging for the main body section (shirt, pants, belly).

Because of the issues with mix of high poly objects, I’d been binding the body as one object, all the head elements as another, then the arms and shoes separately.

I know it’s a mess. Just trying to make the most of a bad start and get the animation done ASAP at this point. I’m so far over on time, it now dwarfs all other issues.

More or less happy with overall design, though, and he’s just doing a few goofy dance moves that don’t need to look realistic. Asking about mouth stuff for possible follow up project. Not enough time now, and you’d barely see the mouth moving anyway since it’s all full body shots for dance moves.


#8

haha, design is great, quite funny.

the topology though leaves much room for improvement, overall you’re way too dense for character animation. the less polygons there are to deform the better your vp performance will be, also you will have much less trouble weighting him… especially the many many loops st the shoulder and thigh/pelvis area are going to give you headaches.

for bendy limbs you will want to have a very even edgeloop distribution.

for the legs i’ve painted the loops red you should try to dissolve and green for the ones to add.

for the arms you can get rid of 3 quarters of your loops in every direction.

you could also cut the poly count for the face in half without losing any detail.


#9

take a look at this character for a reference on poly count. that’s all you need if you want to do cartoony character animation.


#10

hmm… ok. Other rig tests I did showed VERY hard breaks in shoulders especially regardless of how much I smoothed weighting, which is why I added loops. That was with standard hard limbs.

Yeah… not TOO much of a difference with 2x sub for face, though there is a noticeable lack of crispness to the wrinkles around the eyes in particular. The character becomes less identifiable as the facial detail goes down, but yeah, it wouldn’ t KILL me to step it down 1 notch, and I’m pretty sure most people will “get it” at that level of detail.

If I had time now, I’d figure out one of those spline combo plugs to redo the shoes in simple big quads, but I just don’t.

I can take another look at arms. I think I got frustrated last time that the loops are all scrwy, so it was dissolving in all sorts of weird pattersns… what I get for Frankensteining together found parts without even knowing at the time what an edge loop was.

I’m assuming it helps with vp performance to minimize number of separately bound objects, so will take another look at arms and try to get it down to single low poly body including arms, combined high poly head, and shoes.

If I’m seeing correctly, looks like you have no additional loops at all for knees, elbows, shoulders. This doesn’t cause breakage at shoulder which has rest pose at 90 degrees off from T-pose? A bit concerned about hips too since body is so wide there.

As for design, I started with a slug and just added arms and legs. Remarkable likeness, no? Of course, the auto ability in your rig to make tiny hands would’ve been useful.


#11

making everything one single mesh helps a little, but not as much as you would think. you will have just one skin object (which is a deformer) for all the mesh elements anyways… so you can save yourself the trouble of making everything one.

with good weighting you can always get a smooth transition, no matter how low your poly count is… (well, obviously there’s a minimum required, which is 3 loops per limb joint segment, so 3 for the shoulder, 3 for the elbow, 3 for the wrist and so on)
but that’s really all you need, more means just more trouble getting to the exact same result.

also for elbows, wrists and knees its preferable to have some extra helper joints (they are included in my rig, called “fan” in the joint list of your weights tag later), which are oriented half way in between the last joint of the previous and the first one of the next chain. if you weight your very middle edge loops to them instead of in case of the elbow for instance 50% to the last bicep joint and 50% to the first forearm joint, you get much better volume preservation (so you weight the middle elbow loop 100% to the elbow_fan joint, and you can also distribute some of the fan joint weights to the neighbouring loops to define the smoothness)… i hope that makes sense.


#12

That’s only for bendy, though, right? Or is it somehow helpful to fan in case of rigid as well?

Are you talking about the fan weights just in the context of the weighting stage with otherwise typical skeleton, or do they also inform decision about how far out the edge loops go from center for groupings of 3?


#13

no, especially useful for hard bends. this should make things more clear: https://gyazo.com/e7b70a5c371b3b3b6810d50154c6878b


#14

I think I get it, but on small screen now. Will take another look later. Trying another shrink wrap cheat to retopo arms now.

In a parallel universe, a smarter version of myself hired you to do the swirling cell-shaded morph thing you do so well a year ago when I got paid for the 25M streams on the last album I produced, video was done months ago, and much better than anything I could have made… which allowed me to spend my time doing what I do best, and kept income flowing all around.

Instead, in this universe, I decided to take multiple steep learning curves at once, and spent all my time learning from scratch how to do things others could have done better anyway… all while not earning a dime. You know… like a boss.

Live and learn. Or don’t… in my case.

It doesn’t always match some of what I’ve seen and heard for character design, but I’ll take your word for the setup. Your rig is clearly well thought out.

As I wrap up the retopo… am I understanding correctly that the central loop located at the main joint is in each case is not weighted to that joint at all, but rather split between the fan joints on either side…

… but that you will often have more loops than that not because they are necessary for basic structure, but because they are necessary to have quads be as square as possible…

… so there is not necessarily any greater density at all around joints? If so, is it 100% preference for squareness with no consideration at all to increased density around joints?

Do I have that logical process right for how you decide where to put the loops?

If so, does the minimal loop setup involve a single loop at each joint, and a single loop midway to the next where the midway loop serves BOTH surrounding joints, or would you at least need 3 loops per joint that serve only that joint… but just pushed outward to get squarish quads rather than clustered at the joint?


#15

look at the file again i sent yesterday night, look at the joints and the weighting (the numbers near by the loops, t stands for thigh, s for shin and k for knee - which is the fan joint in this case)… look at the object manager, look at the attributes manager. pretty sure you will be able to follow along.


#16

OK. will be in front of bigger screen this evening.


#17

Attempting to redesign hand so it fits with arm. Not done with hand yet. Assuming I need to remove a few more loops, figure out how to reduce number of rotation segments at wrist a bit further (8?), do more even joint spacing, and add som loops to palm for more squarish quads.

Trying to figure out how to apply your system in cases of scale mismatch. For instance, in the case of the wrist, the quad spacing is much larger on the arm than the hand. Would all 3 loops for the wrist be at the wrist scale, or would I use one of the much larger spaced loops at the end of the arm as one of the 3 for the wrist?


#18

spread those loops on the fingers out a little more, if they are too close together you will have a hard time getting good deformations.


#19

The loops were a mess with no simple way to fix, so I rebuilt from scratch the shoes, arms, shirt, and pants, and then tried to follow basic guidelines you’ve laid out for deformations on newly built parts:

As for the hips, joint is along the first loop that’s not parallel to floor… so that means that bottom two of hip triad are looped per leg while top is looped around entire waist. Not sure if that’s an issue, or if I need to do something different with topo of belly and/or shirt that are separate opjects.

Big remaining issue is obviously the head poly count. I have a simple low poly face mesh, but it has none of the wrinkles in it. I did 2x sub on that base mesh, then shrink wrapped nearly 1M poly model to get the current face. If I use anything less than 2x on the sub prior to shrink wrap, I lose the facial wrinkle definition.

On a previous incarnation of the face, I tried high to low poly projetion via zbrush which took a long time, and I don’t remember details of. Hopefully I am missing a simpler way, or hacks to get acceptable vp performance as is.

Low poly head is skin only whereas the eyebrows and hair are their own separate objects for which I have no low poly version, so not sure what optimal workflow is moving forward even if I did project facial detail.


#20

this looks much better now :slight_smile: loops on the hips are also fine that way.

best approach for the head would be to bake out a normal map and /or displacement map for the finer details like wrinkles and use that texture on a low poly version with just the necessary polycount to define the broader shapes.