enter image description here

[enter image description here

enter image description here

enter image description here

My drivers are not working correctly with my shape keys everytime i try to make a shape key work with an objects Z Axis i have to have it way beyond the mesh,I have already tried using the generator but that did not help. how do i only have to make it so that i only have to move it up slightly.

I also have my shape keys needing the object to the go the opposite direction of where it was intended to go

  • $\begingroup$ Did my answer not fix your problem? $\endgroup$
    – cmomoney
    Commented Jan 14, 2017 at 21:18
  • $\begingroup$ What kind of scale do you have on that model. Shapekeys (unless defined otherwise) generally have values from 0 (off) to 1 (fully on). The value -6.7 will map to 0, in which case will do nothing. The value -6.7 is showing that your mouth top cube's location z is 6.7 blender units below its (0, 0, 0) position. If you want to map say [-8, 8] to [0, 1] use something like (var + 8) / 16 as your driver expression. $\endgroup$
    – batFINGER
    Commented Jan 15, 2017 at 17:06
  • $\begingroup$ i tried that and now it has to go under the whole mesh to work also since its the top mouth i want to go up to open the mouth and down to open the bottom of the mouth $\endgroup$
    – A guest
    Commented Jan 15, 2017 at 18:24
  • $\begingroup$ Post the blend. $\endgroup$
    – cmomoney
    Commented Jan 16, 2017 at 17:37
  • $\begingroup$ Added .blend file $\endgroup$
    – A guest
    Commented Jan 18, 2017 at 22:44

1 Answer 1


To increase the effect of, and invert the direction that effects the shape key in your driver:

  1. Go to File->User Preferences.
  2. In the User Preferences window, select the File tab and check the box for "Auto Run Python Scripts". enter image description here

  3. Go to the graph editor in the Drivers tab and Change the type to "Scripted Expression".

  4. In the expression box, type "-2 * var" (no quotes and with var being your variable name). enter image description here

This expression will multiply the distance you target object travels by 2(or whatever you number you choose). So your target will have to move half as far. The higher the number, the shorter the distance. Making the number negative changes the direction it must travel.


After looking at the blend, the target is upside down on the Z axis, making its local space z axis(and your variable) -6.69. Negate that by adding 6.69 to it. Then multiply that by -10 so you will only have to move up by 0.1 to reach the maximum of the driver. So the expression is: -10 * (var + 6.69) And make sure "Auto Run Python Scripts" is enabled.

  • $\begingroup$ didn't work for me $\endgroup$
    – A guest
    Commented Jan 14, 2017 at 21:55
  • $\begingroup$ What was the result. What was still "wrong"? If you can be more specific I can help you. $\endgroup$
    – cmomoney
    Commented Jan 14, 2017 at 22:10
  • $\begingroup$ it seemed to be working somewhat before but instead of dividing 2 i apparently had to multiply it by over 100 and as i kept going it just stoped changing the value $\endgroup$
    – A guest
    Commented Jan 15, 2017 at 5:14
  • $\begingroup$ Looked at the blend. Please see my edit in the answer. $\endgroup$
    – cmomoney
    Commented Jan 19, 2017 at 7:32
  • $\begingroup$ it still going in the wrong direction $\endgroup$
    – A guest
    Commented Jan 21, 2017 at 0:53

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .