How to apply array on collection?

i created a collection (contain 5 diffrent mesh)

i want to create a pattern of collectionerrrr

Man, I think it´s not possible. You can try the folowing:

1 - make the origin of all objects be tha same
2 - Use the Array modifier in one of the objects
3 - Select the others, then select the object with the Array.
4 - Copy the modifiers, from that one to the others.

I was asking something similar:

I believe I’ve read something about some new features regarding collections which would allow a similar approach, meaning, being able to affect the whole collection. But I can’t remember exactly what was that about.

There is. No new feature at all. Just select all the desired object and convert them to mesh. Alt c in old blender shortcuts and it ll apply modifiers.

I think we’re talking about two different things.

If you look at the example I posted in that thread you’ll see what I mean:

Which is more related to what the OP posted here.

Sorry for that missunderstanding.but you are right affecting a combination of object in one mesh will be a solution. And if you want to keep the opportunity to move them separately.you ll have to skin them on bones.
Didn’t try with a duplivert. But I think that only the "carrying vertices " ll be affected by the modifier.

Instance collection perhaps? Didn’t try it for the moment.

I think that should work. Let us know if you test it out

Unfortunately, collection instance is not it.

What I remember was something new they were working on. It’s not ready yet but from what I remember eventually it should make it possible to add modifiers to entire collections. Only, I can’t remember what exactly is :confused:

The question is, do you want to create a one-time arrangement with a collection? Or do you want to create an arrangement that then needs to be modified or influenced by other modifiers in the modifier stack?

For the first thing, Empty elements in 2.8 support collections instances. You can create the instance with an empty. Array modifiers do not support Empty elements, but you can use the following addon with the empty:

For the second thing, there may be some limited and tedious Workaround there. I don’t think developers will add new features to Array modifier, so we will have to wait for everything nodesd project to be completed and fill the Array modifier shortcomings.

I’m sorry for bothering everyone, I know this is an old thread. But I would like to propose a solution, in case someone in the future encounters this:

Right click on the Collection and then → “Instance to Scene”, then add a plane, subdivide it and parent the collection instance (which is just an empty) to the plane. Then, enable Vertices instancing on the plane object properties.
image

3 Likes

Thanks for this, was trying to figure out how to do it

1 Like

Neat using the collection instance with an object and instancing to it’s vertices.
The reason though, I’m reviving this thread is because the demand - to array instances - is still around and I was wondering if the new geometry nodes have a solution? though again, I think the same limitations apply, in that they need a mesh object not an empty?

Yes, to use a modifier, array or geometry nodes or other, you need a mesh, but it is not a limitation, because with a mesh you can use all modifiers.
To array a instanced collection you can use a one-vertex mesh, parent the instanced collection, activate instancing (vertex or faces), and then add the array modifier (not relative offsets).
Or with any mesh, add geometry nodes, and do something… I used this method for a circular array here:

in this example: https://bit.ly/GNcircularArray3-blend in the geometry nodes you can choose whether to have a linear or circular series, the method can be modified to do what is needed.

1 Like

Good you wrote this down :slight_smile:
Yeah, using a mesh instead of empty to parent the instance works, I’m doing that in a project already.
For reasons of array repetition, I parented to a mesh with a single face, the face gives x-y dimensions to the array so I can use relative rather than absolute to array it - works in my case.

I wish I could directly apply modifiers to the instance though…

the problem is that the instance is actually a empty, which has no geometry, and the modifiers affect the geometry.
it would be nice, however, if some modifiers could also be enabled for empties: for example array or mirror; maybe not those modifiers, but others that work at the object level, so one can apply to empties and lights, you might ask…