I’m working on my first real attempt to make a control panel for facial expressions, but I’m hitting a snag that seems like it would have a simple solution, but I can’t figure it out.
I made it like this, where the bottom switch can already control which direction my character speaks from (because he always has a cigarette in his mouth). And the top switch is supposed to be able to turn on/off the expression. Right now, the face has a constant Ah face, without any smooth way to turn off influences. I’ve been tinkering with drivers, but I’m certainly no pro yet.
hi use this expression:
scripted expression driver*
var * var2
in the first variable add the bone you want as target
add a new variable input and rename it var2, and then create a custom property in the panel and copy the single property id (right click in the property input and choose the option copy data path) and paste it into the second variable input as target, also select the option “single property” in the variable to be able to link it…
since is multiplication what happens is that the other input will subtract the other variable driver when is at 1.000 and then to 0.000 again…
Hi Michael,
Thanks for your advice. This is exactly going where what I need!
I forgot to mention in my post the specifics on what I did specifically, like that I use Shape Keys for each expression and that currently my L/R Ah control switches between -1.5, 0 and 1.5. (the right Ah expression is active on -1.5 and 0, but turns off on 1.5, with the left Ah being active on 1.5 and 0, and turning off on -1.5)
So from what I understand why this tactic doesn’t work yet is because it tries to multiply 0 or 1 now, which won’t cancel it out.
I figure I could do var+var2 instead, but that makes the transition more sudden, depending on the L/R switch was on either -1.5 or 0. My first guess would be to have Var2 be able to always add an exact amount that’s neccesary to bring Var to exactly 1.5 for example, but that’s me assuming.
I managed to make it work.
It’s probably more complex now than it needs to be, but atleast it’s doing what I wanted it to do.
I scaled the controls up to get rounded numbers (0-1), created 2 extra control bones and constrained them to the L/R control, use var*var2 in the drivers, mirrored the .R side shape key and linked it to the mirrored L/R bone.