PDA

View Full Version : non linear in-between blendshapes?


joie
03-22-2005, 08:51 AM
Hi there guys.

Iīve made some in-betweens blendshapes and noticed how they work, and I donīt like it.

The interpolation between the in-betweens is linear (wich is not good of course), I was wondering if is there a way to make that interpolation smoother, is it possible?

Thankīs in advance.

JohnPark
03-24-2005, 09:04 PM
Hi Joie, unfortunately blendshapes work by moving vertices from point A to point B to point C in a straight line. One way to fake non-linearity is to increase the number of in-between shapes. You may also want to add other deformers like lattices or clusters to the mix in order to really shape things.
-JP

joie
03-25-2005, 07:21 PM
Sorry, but I really canīt believe that is true. Since Blendshapes are vertex animations, they must be stored somewhere as a curve animation, and as a curve, can be manipulated.

And If I make more in-betweens, they will be linearly interpolated as the others, so it will be wrong again.

Are you completely sure this canīt be done?, I canīt believe that.

DiGiman
03-25-2005, 09:11 PM
I can't offer much help, but at this last siggraph, Weta was doing some demonstration. They said that on Gollem they used some sort of complicated non-linear blendshape set-up. They didn't explain it at all, but they said something about utility nodes and connections in the hypergraph. Might be a lead to follow....

joie
03-25-2005, 11:04 PM
Do you mean this?: http://cube.phlatt.net/forums/spiraloid/viewtopic.php?TopicID=634

But thatīs not what I mean, it uses a new blenshape when two or more joints a certain wrong (or invalid hyper-exagerated) pose...

JohnPark
03-27-2005, 05:19 AM
Sorry, but I really canīt believe that is true. Since Blendshapes are vertex animations, they must be stored somewhere as a curve animation, and as a curve, can be manipulated.

And If I make more in-betweens, they will be linearly interpolated as the others, so it will be wrong again.

Are you completely sure this canīt be done?, I canīt believe that.

Yeah, it's painful, but true. The vertices are not stored as animation curves, but rather as vectors. This is why you can "overcrank" a blendshape (i.e. weight it to five even though one = 100%).
And, yes, if you make more in-betweens they are also linearly interpolated. The only hope here is that by adding a few more in-betweens it will be harder for the eye to notice the problem.
Things like pose space deformation occur after the skin cluster in joint space, so you get more of an arc. This is a good solution if you're doing blend shapes currently for elbows and the like.

joie
03-28-2005, 08:15 AM
Surelly this can be done in any way, but it may involve some AETemplate mel coding I supose...

But is a pain in the ass, I have some winks in my cartoon characer wich canīt be done through clusters or bone rotations and the linear in-between thing is weird..., fortunatelly the movement is fast enough to be noticeable...

JohnPark
03-28-2005, 02:23 PM
Another good way to fix this behavior is with a small lattice that arcs the eyelid vertices when they enter it.
-JP

platypus
03-29-2005, 04:42 AM
haven't tried this yet myself, and i just came across it earlier today, so i'm not entirely sure that it's what you are looking for, but... this tutorial (http://www.keegan3d.com/tutorials/tutorial--mouthStick.htm) goes into using the "in-between" option to get non-linear motion in the lips. worth a shot.

CGTalk Moderation
03-29-2005, 04:42 AM
This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.