Page MenuHome

Array Modifier: Fit Curve calculation method ignores parent relation
Closed, ArchivedPublic

Description

System Information
Windows 7 64, GTX 980

Blender Version
Broken: e92f235283 + 58a434b

Short description of error
I have a setup of a Curve and a mesh object that uses an Array modifier with "Fit Curve" option enabled. Both are parented to an Empty.

Now if I scale that parent Empty, I normaly would expect that nothing happens beside a bigger/smaller empty+mesh+curve.
But instead the Array also counts up/down, it seems to "double-calculate" the increasing/decreasing curve scale when changing the Empty.

Since this is somewhat unusual for parent to child relation without other influences, I think this could be a bug.

Exact steps for others to reproduce the error

Event Timeline

Bastien Montagne (mont29) changed the task status from Unknown Status to Archived.Jun 8 2017, 9:23 AM
Bastien Montagne (mont29) claimed this task.

Mmmh… in fact there is no bug here, even though the result may not be what one would expect off hands.

Thing is, modifier affects its own data always in 'mesh' space (i.e. with taking into account own scaling, rotation, etc.). That’s what allows you to get same result when you scale up or down a modified object, it works as if it was a tool applied in Edit mode.

However, it does take into account the object transformations of its other operands, so here it uses object “real” scale of the curve to check its length and compute how much copies are needed to fill it.

There is no perfect solution here, current behavior will be expected one in some cases, but might appear “broken” in others. Maybe we could have similar “space” options as with constraints - but that would be a TODO/design task, thanks for the report anyway.