Constraints, Influence, and Ipo Drivers

I’m having a problem setting up a control for an Ipo Driver.

I have a constraint applied to an object and I want to control the influence, so I go through the motions and set up an Ipo Driver to handle it. It works, but it won’t actually update the Influence slider until I scrub for a frame change.

I have a cube object set as the driver for the keyed Influence setting, using LocX as the control transform and axis. It’s a typical Ipo Driver setup, nothing fancy. It works, in the strictest sense. I’ve also tried using a bone as a control object, with the same result.

So I can make the object control the Influence slider like it should, except that it doesn’t update until I scrub some frames.

Here’s a Blend that shows the problem. Drag the control object, nothing happens. Scrub the timeline, and then it updates.

I can force a frame change this way. I added this code to a Scene Scriptlink to update on Redraw:

import Blender

frame = Blender.Get('curframe')
Blender.Set('curframe', 1-frame)

This script is in the Blend file, and can be set up as a Scene Scriptlink for Redraw. I can live with this but I was hoping for a better solution.

Any help is appreciated. I’d like to have the Influence slider update when I drag the control, without always forcing the current frame to 1.

This seems to work a little better, as it keeps the current frame:


 import Blender
 frame = Blender.Get('curframe')
 Blender.Set('curframe', 0)
 Blender.Set('curframe', frame)