Что будет более производительным?
Может использовать пул объектов? Максимально количество блоков на экране, будет храниться за его пределами. А ты при надобности будешь их просто брать, и вместо создания и уничтожения, активировать и дезактивировать(или перемещать из-за спины игрока вперёд), чтоб двигались(скрипт движения уже в объекте,просто ставишь его на нужно место, активируешь, а как заходит за спину дезактивируешь, чтоб не отсвечивал или перемещаешь, если он уже требуется). При смене биома, можно просто менять материал/меш блоков. 
Конструкции из которых складываются блоки, можно сделать заранее, или генерировать процедурно
- преждевременная оптимизация - это плохо, да ресурс устройства кушает, но время разработки проекта важнее, когда будет тормозить на шаблонном устройстве, тогда и нужно беспокоиться, если инстанс не вызывается каждый кадр, и не по 50 штук за раз, то обычно проблем даже на слабых устройствах не возникает

- зачем делать клон? можно сделать набор окружения из кусков, которые правильно совмещаются и просто ставить их вперед, по мере продвижения к персонажу (да лучше чтоб центральная точка с персом и камерой не двигалась, двигались блоки окружения на камеру, позволит избежать проблем с точностью float за 10000f)

- много объектов лучше не ставить, сделать столько сколько удобно для раннего осмысления обстановки игроком, отсутствие дальних блоков просто скрыть туманом