Blender lagging due to many duplicates/arrays of a heavy mesh. How best to reduce this lag?

I have a project Im working on where I need to use a specific model that was provided to me. This model came as a very dense obj which I imported directly into blender. I needed to duplicate this piece about 80 times throughout and I did so using mirror and array modifier, as well as ALT + D. I also cleaned up this model using mesh>clean up>merge by distance… until it started to look strange, and then took one step back.

Is my method of duplicating this the most efficient in terms of processing power? Is there a better/less processor hungry way to do this?

Thank you.

Try using collection instances maybe? I think they just refer to the original data instead of copying it each time.

Do you know if mirror / array modifier essentially creates collections? Or do I need to make a collection, and then apply the modifiers to that collection? But then I hide the original model?

Make a collection (even just one lone item is Blender legal), create an instance, then apply modifiers. I’ve never deleted the original because my understanding is that it supplies the data you need for the instances. You can make the original invisible if you want to though.

I made an instance but when I move the original, the instance moves far away from it. Also, the empty for the instance is not centered. How do I set the emtpy to center on the instance, and why is it moving away from the original when I move it? Ready to cry!

Yeah, about that… I cry too. Try moving your origin to the geometry (object > set origin > origin to geometry) it worked for me earlier today. On the other one I’m working it. Try parenting one to the other and see if the child behaves.

Here’s me trying…not working:

These collections are creating empties that are far away and there is no way to center them! :frowning: :nauseated_face:

Sorry, I know the feeling. You stumped with that one but I will keep working on that.

I must admit I don’t understand your issue very well.

I am able to work with a collection instance just fine and clone well over a 500 times before my system starts to chug. That is with the subdiv modifier applied so a model that is relatively similar to yours in polycount.

If this is truly an alignment issue it should be easy to solve. For the collection you want to instance (so the one with the original cuplid mesh):

  1. Go to edit mode and select the center vertex in your cup lid
  2. Press Shift + S and choose Cursor to selection
  3. Go out of edit mode and goto Object > Set origin > Origin to 3d cursor
  4. With the cup still selected press Alt + G to place it at world origin

Optionally you could also do:

  1. Make certain to apply any all transforms (Alt + A > All transforms)

This should make certain that whatever issue your experiencing it has nothing to do with alignment.

With that said, I can’t reproduce your issue here on my end and I don’t think it has anything to do with alignment. Are you using the latest official version of Blender?

Over 500 cuplids:

Array creates copies, not instances. You should use instances (Alt+D) for less computing.
Would it be possible for you to upload the file? That would make things more clear.

…alternatively you could use an older 2.7* Blender Version for the editing part. Or you ask facebook what hardware they use to handle a quarter of the world’s population data…

Create arrays of single vertices and use dupliverts or particles to instance your object onto the verts.