Blend Shape Controller pushing values to extremes

Blend Shape Controller pushing values to extremes

maierelaura
Observer Observer
972 Views
2 Replies
Message 1 of 3

Blend Shape Controller pushing values to extremes

maierelaura
Observer
Observer

Hello, I wanted to make some blend shape controllers so I could have easy control to the left/right attributes of the shapes without needing to menu to them. To do this, I made nurbs boxes with circles in them to be the drivers, I set the blend shapes as driven and keyed them so that moving the nurbs circle Y turns both Left and Right to 1, and going X in left or right disables the opposite (i.e. for a blink control, going left with the circle makes the right eye open, keeping the circle zeroed out has them both closed, going right makes the left eye open)

 

The problem with this is that if the nurbs circle is not centered in X when it's at 0 Y, the eyes will go to a -1. Basically, if my Y is 0 but my X is maxed to the left, for example, the right eye opens super wide. It's not too hard to just properly 0 it out I suppose but I'd like to prevent this from happening. I'm not sure if there's a way to limit the blend shape value to stop at 0, but I couldn't find it. I read about adding a clamp in the Node Editor for it but I have no idea how to go about that cause I've never used the Node Editor before. Below is the blink example to show what I'm talking about exactly.

 

Thank you in advance!

 

0 Likes
973 Views
2 Replies
Replies (2)
Message 2 of 3

jmreinhart
Advisor
Advisor

https://www.youtube.com/watch?v=6IY1ybzR6Rg This video shows the basics of the Node Editor. You'll just be putting a clamp node between your control an the blendShape node instead of a multiplyDivide node like in the video. This page explains what all the attributes of the clamp node do (https://download.autodesk.com/us/maya/2010help/Nodes/clamp.html

 

 

 

0 Likes
Message 3 of 3

Kahylan
Advisor
Advisor

Hi!

 

If you just want your blendshape target weight to not go under 0, a clamp node is the way to go. It's not hard to do, just follow the steps that @jmreinhart posted.

You could also instead of counteranimating the opposite eye to ignore the value when the control is on the other side of the box just use a blend colors node for each target that is driven by the X position to either feed a 0 value or feed the value driven by Y. The Node editor gives quite a view fun ways to solve this problem, so getting to know it is recommendable 😉

 

On another note. It seems to me, like the way you set up your eye control is fairly limiting. With this system you can't have one eye closed at 50% and the other one fully open/fully closed. Unless the X direction is a smooth falloff. But even if it is technically possible to have an offset blink it still would need quite some mental gymnastics, as to how you move the controller in X while moving it in Y at the same time to first close one eye and then close the other while the first one opens. And to most good animators, having the blinking happening slightly offset in both eyes is quite important.

 

I would probably split your control up into two controls, one for the left eye and one for the right eye. Eventhough this is one more control the animator needs to animate, it is still more animator friendly since the eyes will be on different animation curves that way and easier to retime. Just something to think about.

 

I hope it helps!

0 Likes