2
$\begingroup$

I'm trying to make an ammo belt using an array on a curve. When the belt is in a straight path, it looks good to me, but when it curves on top, the distance between the bullets is longer than it should be. Is there a way to keep the distance between them equal? The bullet is parented to a plane and I'm adding an array modifier to the plane.

enter image description here

$\endgroup$
5
  • 1
    $\begingroup$ Hello and welcome to BSE. I have tried your setup and it works snipboard.io/0pifhZ.jpg so can you perhaps share your blend file blend-exchange.com $\endgroup$
    – Harry McKenzie
    Commented May 18 at 0:37
  • $\begingroup$ I just did. Please, let me know what I an do about it. $\endgroup$ Commented May 18 at 3:42
  • 2
    $\begingroup$ I don't see the file. you have to edit your post and paste in the provided link to your file or just give us the link to the file. it's not automatically linked to the post. $\endgroup$
    – Harry McKenzie
    Commented May 18 at 4:04
  • $\begingroup$ the spacing is because you parented the bullet to the plane and used the plane for array and put on the curve so the spacing is following the size of the plane instead of the bullet. remove the parenting and directly use the bullet as object to array. $\endgroup$
    – Harry McKenzie
    Commented May 19 at 1:40
  • $\begingroup$ instead of giving the Curve modifier to a long plane, give an Array + Curve to a square plane, enable its Instancing > Faces, parent the bullet to it, and you will have a regular gap between the bullets $\endgroup$
    – moonboots
    Commented May 19 at 8:42

1 Answer 1

3
$\begingroup$

The curve along which you are deforming is not where it appears to be. In its Data tab, Geometry panel, it is carrying an 'Offset', with the result shown on in green on the left, below.

enter image description here

The plane-array is being deformed along the actual curve, before offset, shown in the middle, above. The plane-origin is offset from the curve-origin to compensate.

But that means the array elements are offset outwards along the curve's normals, which splay as the curve turns its tight corner. If the plane's origin was on the curve, as shown on the right, the array-elements would be evenly spaced at their centers.

But that arrangement would be in the wrong place for your model.. the answer will be to edit your curve so it's on your desired path without an offset, and the plane's origin can be on the curves's origin. Then the plane elements will be evenly distributed at their centers.

$\endgroup$

You must log in to answer this question.

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