Best way to repeat an environment?

I have this factory environment that should basically be infinitely repeated in two directions, a bit like a massive corridor. I’m planning on using some kind of distance fog so that it doesn’t actually have to go on infinitely, but even so I’m worried simply copy pasting every item several times over will ruin the performance.

What’s the best/standard way of doing this? Do I need to create LOD levels for everything? What ways are there of optimizing far away objects that won’t be interacted with?

Or is there some way of projecting a copy of an environment, kinda like an infinity mirror?

Inside a blue print you can add an Hierarchical Instanced Mesh component which will hold all the instances for your props. You can use a blueprint to distribute your props but each new instance you will add to this component, which in fact makes Unreal see it all as a unique mesh. It will handle the materials accordingly. You can use the built-in LOD system in the Mesh editor if you want too, but first start using the Hierarchical Instanced Mesh component.

This worked perfectly. Thank you very much!

Through your comment I found this tutorial that really helped:

Good to know! GL on your project!