Array along curve?


Hey chaps,

i can’t find any function to duplicate/ array an object along curve? Possible?
I only seem to find the “duplicate polygons along curve” but no array option for objects.

Couldn’t find it in the manual either.

Any idea? Sorry if i’m looking too far, really can’t find right now.

Thanks heaps!


Create all the duplicates first.

Select all the duplicated objects.
Click Constrain > Curve (Param).

In the U location box, type l(0,1)


Hey thanks, i assume you meant the path-age input, right? That’s where i put the “l(0,1)” but had to do a “l(0,99)” in my case for the correct distribution.

I hope though a more user-friendly array/ duplicate tool along curve/ surface (a la Modo) will come to Soft in a next update.


Yeah i really hope there’ll be a proper array tool.

Honestly I always found the constraint option somewhat “buggy”. You activate “up-vector” and it flips your objects but when you de-activate it again it doesn’t put your objects back to their original position.

And then same with tangency inputs. It always changes the effect even if you turn back to the original inputs. Really strange.

No offense to you Softimage/ Autodesk. I just hope we get a proper objects array tool and better constraints behavior.

Anybody know a good free array or duplication plugin/ script for S2010?


The reason is that you’re not telling them where to point. It’s not storing where it was originally because you’ve likely not set that data using another constraint or a keyframe. I suggest you set a keyframe on its local rotation channels to tell it where you want it to “point” if you want this behavior. Or you can just constrain it to something else (by using a direction/orientation or whatever other kind of constraint) and toggle between them with an expression.


Here’s how you can do it in ICE -


That is nice if you duplicate symmetrical objects (spheres, cubes, etc) but in my case i need my objects, screws to be precise, facing/ aligned in the direction the surface curvature they’re placed onto.

That’s why i wish there was a more user-friendly array/ duplication along surface a la Modo.

Anybody has a tip so i don’t need to rotate and put in place each screw individually?


I’m at a loss to what you are having trouble with, and I’m not familiar with Modo’s tools.

You seem to have down the constrain to path, as well the L(0,100) trick for the %age…

And you can click on the tangency button “active” to align everything perfectly to the curve…

If you turn tangency off and you want to reset your objects, just go to their rotation transform and type 0 to undo changes.

Now after that, what is left that is missing functionality?


Basically i’m trying to align my objects (screws) along a surface curvature. there are over 40 screws i need to align on the surface and the surface is curvy. It would be a bit of a pain in the ass to go do it all manually and because i just want to figure it out for future tasks.

So i extracted a curve and thought maybe i could constrain the screws along the curve but it doesn’t work really because the screws aren’t facing in the right direction. They should be doing so according to surface normals.

Any idea?


Like that? If so, Tangency is also turned on, along with the up_vector, in this case set to +Z.

Nothing fancy here, exactly what was described above in all the other posts.

Curve extracted from the sphere, select all of your duplicated objects at once, constrain by path, use the L(0,100) trick in age%.

Turn on tangency, set the axis, turn on up vector and play with the roll.


Yeah exactly that’s what i was looking for. Seems i wasn’t that far off.

Just hope my constraints/ tangency will work properly this time.

Thanks all again


I think the main nice function the Modo script has (which is user made),
is the ability to specify a distance between objects. Of course this could be made with
ICE too, if you just knew how… (I dont’t :D)

Modo script:


I’ve been working this type of rigging for years now. In case you need this…

For ease of use and predictability while modeling use Point along Path Roll Frame Normal on the Up Vector page, and it will always point along the path tangent normal. No need for an upvector object. Then you can swap the Affected Axis to the direction you want the objects to point, and roll will work very well. Note, if tangency is X (postitive or negative), then the affected axis can be +Y, -Y, +Z, or +Z, but not +X,-X.

Try this with several cones constrained and you’ll see what I mean.

In general, if you animate this curve, don’t animate the first two points (the first point and tangent handle), or the objects will spin in an undesirable (or desirable) manner.

From the manual:
Up-vector ConstraintsControlling Flipping with Path Animation

In the Path constraint property editor (see Setting Objects on Paths), the Point along Path Roll Frame Normal on the Up Vector page constrains the up-vector of the constrained object to the roll-frame normal of the path curve instead of constraining it to a separate control object or direction (as defined by the Point At options on the Up Vector page). The roll frame normal is a frame based only on the moving tangent of a path curve.

When you select this option, the Point At options become unavailable.

Because this option defines the up-vector direction independently from a separate control object or direction, this can help prevent the constrained object from flipping in cases where the trajectories of the path curve and the up-vector control object would cross.


Thanks Stoehr. I’ll try a next time.

I was a bit disheartened and ended up doing it manually. Not sure why it didn’t work properly in my case. The distribution was fine but the screws just weren’t perfectly aligned along the normals like Jettatore’s example.

Maybe because it wasn’t a simple sphere?

Anyhow i hope Autodesk/ Softimage will implement an idiot-proof array/ duplication along surface tool in one of the next updates.


It also can help if you object has it’s SRT frozen (Translate->freeze all transformations) while it is centered at the scene origin where you’d like the transformation along the curve to happen. So for a screw, I’d move the screw so that the head is just above the origin. I find things to be more reliable that way…and I often do this for certain deformers too (like bend).

Maybe there is a better way, but this works for me…

On a side note- yes it it would be nice to have it like modo…but there are things you can do in SI that AFAIK you can’t do in modo as easily (like quickly go back and scale all your rivets in local space, move the curves and have it all live, use instances or clones and change the model while still keeping the rest).

Still modo is a great modeling application. SI is just competent with modeling in most regards.


Probably too late by now, but I’ve written a plug-in that does something similar to what you need a while back. You can take a look at it here:

It works fine on my machine, but since it still needs a lot more rigorous testing, your mileage may vary.


P.S. How is everyone doing by the way? It’s been a while since I stopped by :slight_smile:


Oh very nice! Yes I’ll use it a next time for sure, thanks much!


I thought you’d find the script I posted in the sticky section of the scripts and plugins thread useful. :slight_smile: It’s just an automated version of the “l(0,99)” method.


This thread has been automatically closed as it remained inactive for 12 months. If you wish to continue the discussion, please create a new thread in the appropriate forum.