Displacing an IPO?

Please correct me if my understanding of blender’s IPO system is inaccurate.

I have a couple of hundred identical objects, and one IPO curve animating all of them. Is it possible to offset each of these curves by a different amount (ie, so each object begins acting a short time after the one before it) while keeping the IPO linked?

Making a single-user copy for each object would be a bitch because I’d like to be able to keep tweaking the animation curves after I’ve set up the objects.

Edit: if this is possible, how easy would it be to automate the process with a python script?

A couple of hundred? Could you perhaps elaborate on the situation… perhaps there is an easier way to do what you are trying to do using particles and dupliverts…

I’m trying to grow a root. I was going to have a few hundred Metaballs in a line, about half a unit apart. Their scales are animated - scale starts at 0, quickly grows to 1, then much more slowly increases to 2.

The idea is each ball starts this scaling half a step after the one before it - which is worked out so the ball starts growing as soon as it’s inside the volume of the previous ball. Thus what’s seen by the camera is an extending tube shape.

I reckon Python would be a good bet. This is one example of why I want Blender to have arbitrary IPOs and that everything is animatable. Being able to animate everything means that you can assign expressions or at least arbitrary links to object parameters. Having unlinked IPOs means you can simply create an IPO with an identifier somewhere like a global variable (Shake does this) and you can reference it from an expression field.

This case is slightly different as you don’t really want to add an expression to every object manually. Here, I would just use a script-link. Then on a frame refresh, have a script that iterates through your object names or types and sets the scale to be an expression of a single IPO but indexed at a different time depending on either the name or perhaps object position.

The tricky part might be knowing when to scale further down objects because just scale, name or position values might be inaccurate and you’d end up with root chunks appearing from nowhere.

I’d actually use an extruded object for this - you link a curve to the profile and then animate the curve so that the extrusion profile animates. They did animated roots in Elephants Dream - not sure if they did it that way but it seems like the easiest way and I’ve used it before. Plus you always have control over the curve direction.

@evilkillerfiggi : what you’re looking for is to work with arrays actually. There is a function in blender already to achieve the effect you’re looking for. Arrays have the option to have two endcaps, or one… a start cap and an end cap…and you can then extend the base element by scaling it which will give the effect of “growing the root”… but that’s as much as I know of it. See if you can find some more info on the elephants dream site… that’s where I got my info but it’s been a while since i’ve had a look at that feature…

How do you scale the base element without also scaling the end cap?