Vector Point distortion when arm or leg flexes with bone

Wondering how to accomplish a certain animation task? Ask here.

Moderators: Víctor Paredes, Belgarath, slowtiger

John25S
Posts: 27
Joined: Tue Jan 29, 2008 3:20 am

Vector Point distortion when arm or leg flexes with bone

Post by John25S »

Hey guys I've had anime studio for about a year now and i pretty much figured out solutions to the problems i have by myself but this one is a brick wall! I'm 50% done with my current project (backgrounds, Script etc) I just need help on how to make a natural moving arm! Now i can draw my ass off but every time i try to put bones in the arms of my character the vector points always screw up every time i make them flex their arm. Ive seen how the people from cartoon solutions rig their characters by using a square shape and molding into an outline but it seems and feels quarky and unmanagable. Is there any tips, clues, tricks on how i can get rid of that point distortion? Any help would be appreciated.

Thanks :)
User avatar
fiziwig
Posts: 197
Joined: Fri Jan 04, 2008 8:00 am

Post by fiziwig »

Which vector points screw up? The ones in the arms, or other ones?
In what way do they screw up?
Without seeing what's going on, anything anyone might say would just be a wild guess.

--gary
John25S
Posts: 27
Joined: Tue Jan 29, 2008 3:20 am

Which vector points screw up?

Post by John25S »

[Which vector points screw up?]
OK Lets say i want my character to flex his arm to make a muscle. When the forearm overlaps the the elbow it distorts making white Circle/(shape) whatever it is. It doesn't overlap correctly it always distorts
User avatar
fiziwig
Posts: 197
Joined: Fri Jan 04, 2008 8:00 am

Post by fiziwig »

Sounds like your points are pulling too far and twisting the shape, or turning it inside out. Does it look anything like this:

Image (this one twists the cloth, not the empty space, but the principle is the same.)

You probably need to un-bind some of the points from the bone, and probably move some of your points around a bit to get better conformation in the bends. Take a look at how I do it here:

http://fiziwig.com/anim/index03.php

It's all a matter of adjusting points individually to get the optimum flex for your character. Just be sure to turn off Flexi-binding for the layer. I find it works best if you can use just one point on the inside of the elbow or knee joint, and two or three points on the outside part. See further down on the page linked above.

You can also adjust points during animation to get the smoothest possible result. It takes a little longer than plain bone animation, but might be worth it.

--gary
User avatar
heyvern
Posts: 7042
Joined: Fri Sep 02, 2005 4:49 am

Eliminate shape overlap holes

Post by heyvern »

John25S,

I got your PM, I thought I would answer here so others can benefit.

You just need to use more than one shape if there might be overlap, for arms and legs. Split the mesh at the joint by connecting a vector accross the joint like this:

Image

Additional Info:

The reason for the hole on an overlapping shape is to create compound shapes, punching holes etc. Without being able to make holes from a shape that overlaps itself this wouldn't be possible: (Scroll to the bottom of this page from the old Moho help file)

http://www.lostmarble.com/moho/manual/i ... tools.html


-vern
User avatar
mkelley
Posts: 1647
Joined: Fri Nov 02, 2007 5:29 pm
Location: Sunny Florida
Contact:

Post by mkelley »

Far be it from me (a newbee) to diagree with the experts here, but I tend to think Vern's solution isn't the one the OP is looking for -- I know it's not the one I'm looking for.

In general, unless you're *trying* to get overlap, you don't want two separate shapes. You want a continuous flowing arm that bends properly, like the Popeye arm in the Help file tutorial. That arm works great because it's so thin where it bends (thus no way the vertices can go wonky). But a "normal" arm should be able to work as well.

IMHO AS is very hit or miss when it comes to this behavior. I can design an arm that works about 50% of the time as long as I weight it so the weights are huge (so that is my advice to the OP -- increase the weights on both the upper arm and forearm so they overlap quite a bit. This seems to help a lot). But there's no particular rhyme or reason -- with the identical vertices on both sides it often will bend properly one way but not the other (and half the time it's the "other" way I need it to bend :>).

I can post LOTS of examples if anyone wants to see, but this ain't hard to duplicate. Just create an arm that's reasonably thick (your example, Vern, is still *way* too thin) -- about four or five times (or more) the width of a bone will do it. Then try to set up your bones to bend it properly. You'll see that even a 70 degree bend (one in which the two sides don't even come close to overlapping) will start to exhibit this odd behavior as Gary shows, at least half of the time.

Otherwise Gary's advice holds but it shouldn't be necessary to adjust points individually and, in fact, is kind of recommended against in the online help files (as something that was only needed in the "old" days of Moho) and it's counterintuitive to use *less* points when facing this problem. In addition, you often DO need to bend the arm both ways (if it raises up, for example). If there is a new version of AS this is the ONE thing I'd really like to see changed -- a much more robust bending solution.
User avatar
J. Baker
Posts: 1086
Joined: Wed Mar 23, 2005 7:22 pm
Location: USA
Contact:

Post by J. Baker »

User avatar
mkelley
Posts: 1647
Joined: Fri Nov 02, 2007 5:29 pm
Location: Sunny Florida
Contact:

Post by mkelley »

No, that's an old tutorial (Moho) using the assign control points, which in AS is NOT recommended (it's recommended to use weighting instead -- besides of which, assigning vertices is a big PITA).

AS supposedly only kept this old method for backwards compatibility (at least according to the manual).
User avatar
fiziwig
Posts: 197
Joined: Fri Jan 04, 2008 8:00 am

Post by fiziwig »

mkelley wrote:No, that's an old tutorial (Moho) using the assign control points, which in AS is NOT recommended (it's recommended to use weighting instead -- besides of which, assigning vertices is a big PITA).

AS supposedly only kept this old method for backwards compatibility (at least according to the manual).
I've run into cases, even as a newbie, where assigning points is absolutely essential. The "old" method is still very useful, and is certainly not obsolete, any more than a point-an-click camera made cameras with manual shutter and f-stop settings obsolete.

Use the easy way when it works, but know how to use the "hard" way when it is necessary.

A case in point is where I welded the sleeve points to the body bone in the character here: (See "Point Binding for Refined Characters" near the bottom) http://fiziwig.com/anim/index03.php

There's no way that can be done with weighted bones.

--gary
User avatar
J. Baker
Posts: 1086
Joined: Wed Mar 23, 2005 7:22 pm
Location: USA
Contact:

Post by J. Baker »

mkelley wrote:No, that's an old tutorial (Moho) using the assign control points, which in AS is NOT recommended (it's recommended to use weighting instead -- besides of which, assigning vertices is a big PITA).

AS supposedly only kept this old method for backwards compatibility (at least according to the manual).
I just made that tutorial last year. I prefer adjusting control points myself then using weights. I find it faster and you get exact placement and so forth. :wink:
John25S
Posts: 27
Joined: Tue Jan 29, 2008 3:20 am

Thanks

Post by John25S »

To all parties involved thank you very much. And thank you HEYVERN for replying to my P.M. :D :!:
John25S
Posts: 27
Joined: Tue Jan 29, 2008 3:20 am

No holding me back now

Post by John25S »

Hey everyone don't underestimate this technique that just learned from another thread!

viewtopic.php?t=4970&start=0&postdays=0 ... ght=joints

I do believe this is the best route to go by a long shot. Just tweek here and there and you have a very smooth techniques! 8)
Goei
Posts: 18
Joined: Mon Oct 22, 2007 10:32 pm

Post by Goei »

Ha, I got tired of all that and just split the limb into two layers then adjusted the line widths so they would blend. I all depends on the style that you want.
John25S
Posts: 27
Joined: Tue Jan 29, 2008 3:20 am

Post by John25S »

It was the same thing as vern was saying earlier but for all NEWBEE's It goes real indepth on how to get rid of this problem!!!

viewtopic.php?t=4970&start=0&postdays=0 ... ght=joints

THANKS AGAIN VERN 8)
User avatar
heyvern
Posts: 7042
Joined: Fri Sep 02, 2005 4:49 am

Post by heyvern »

I think I misunderstood the original question. I thought the "circle" or "loop" was the hole in the overlapping shape. I know what you mean about the way the shapes "bend". You have to understand the nature of the vectors and what makes them do that. You need some points close to the joint so that "loop" isn't pronounced. Also the placement of a point on the other side of another point changes how the shape bends.

Good bending joints rely on proper bone position, bone strength and point position. It is tricky and difficult to get it perfect. The main complaint here I think is trying to "maintain volume" as the shape deforms.

Using overlapping shapes can help hide that join. "fan bone" can help as well. I always use two shapes in an arm or leg. One continuous out spline with a short connection between the joints to split the shape.

-vern
Post Reply