Делаем из объектов instances без плагинов, смс и регистрации.

Здравствуйте. Хочу поделиться очень простым, но на мой взгляд полезным приёмом.

Итак задача: у нас несколько объектов, которые когда-то были инстансами или они полностью идентичны по сетки, но они уникальны каждым сам по себе. Нам нужно сделать из них инстансы. Если их не много то как правило раньше я просто копировал один объект как инстанс и расставлял заново. Но что делать когда их много или ОЧЕНЬ много. Из примеры можно привести столбы освещения в экстерьере микрорайона.

Что нам надо. Выбираем один объект как оригинал, далее идём в Track View – Curve Editor это панель для анимации.

В левой части панели видим название нашего объекта. Нам нужна строчка Object (Editable Poly).

Наживаем на ней правой кнопкой мыши. В появившемся меню выбираем copy.

Теперь в сцене выбираем все объекты, которые мы хотим сделать инстансы. Можно руками, можно через Edit/Select by.

Опять возвращаемся в Track View – Curve Editor. В левой части панели все выделенные объекты. В строке поиска внизу начинаем вбивать Object (Editable Poly). Во всех объектах должна выделиться синим эта строчка.

Опять нажимаем по любой выделенной синим строчки Object (Editable Poly) правой кнопкой мыши. И в появившемся меню выбираем Paste.

Появляется ещё одно окошко, где мы выбираем естественно Instance.

Вот и готово все объекты у нас инстансы.

В принципе таким способом можно заменять геометрию использую пивоты других объектов.

Комментарии (29)

+13
Skap
Оч сложно. Есть object replacer в soulburn script lister.
Есть просто скрипты отдельно, которые одинаковые объекты зареплейсят на инстансные и всё на 2х кнопках
+30
Navik
Идея заключалась в том, чтоб решить задачу вообще без плагинов скриптов или чего-то стороннего.
+3
Skap
Так то оно так, но не использовать вещи, которые удобнее крайне странно...Я понимаю, если бы все остальные методы платные были. Вроде имеет место быть, но зачем...
+4
Grylisma
Согласен. Это всё равно, что рыть землю для посадки картошки руками, в век, когда люди давным-давно изобрели лопату)
+7
necBTpuko
Разные ситуёвины бывают в работе. Да, есть скрипт, но за интересный способ спасибо :]
+21
grdesigner
Все скрипты используют базовый функционал 3д Макса. Чем больше от них зависишь, тем тяжелее переход на новую версию. Особенно, если используешь "народные" лицензии.
При загрузке 3д Макса прогружаются все скрипты и плагины. И чем их больше, тем дольше загрузка.
Любой скрипт потенциальная причина для вылета в самом неожиданном месте.
Производители скриптов и плагинов, которые не сыскали огромную популярность и не приносят большой доход, легко прекращают поддержку.

Лично мне этих минусов достаточно, чтобы использовать по максимуму стандартный функционал, который есть из коробки. Пусть на пару кликов дольше. Тем более, что подобное необходимо крайне редко.
0
Skap
Блендак за счёт этого живет)))
Хз кстати на сколько именно скрипты замедляют загрузку макса. Плагины да, а вот скрипты....
Большинство скриптов же просто проходят по тем же менюшкам, что и человек только через код и быстрее.

Ну как говориться каждому своё....Я бы в любом случае написал код (возможно, на те же завязки на wire param), если бы этот код уже кто-то не написал
+4
-NiK-
"Все скрипты используют базовый функционал 3д Макса".
Смелое заявление :)
Смотря что вы имеете в виду. Если то, что все скрипты банально запускают процедуры макса, которые можно запустить и без них через интерфейс, то нет. Это делают только самые примитивные скрипты, которые и экономят вам не больше "пары кликов".

Maxscript больше ограничен по памяти и производительности, чем по возможностям. Наивно считать, что в максе есть аналог любого инструмента, который можно создать на maxscript.
Разумеется речь не идёт о замене инстансов, это вообще одна строка for o in selection do replaceinstances o $[1]

С плагинами история совсем другая. Они грузятся при старте макса (в отличие от большинства скриптов), они могут оставаться в сцене и выдавать missing при открытии без плагина, и они требуют рекомпиляции под новую версию макса, а это означает ожидание их обновления, и "народные" версии разумеется все усугубляют.
Но и возможности там другие. Мы все так или иначе зависим от набора плагинов, будь то корона или форест пак. Набор плагинов лучше сокращать, чем наращивать. И лучше покупать и использовать бесплатные версии, чем ломаные. А вот от скриптофобии в принципе толку мало.
Я понимаю ваши аргументы и со многим согласен, но вы чересчур категоричны.
+2
grdesigner
Верное замечание. Видимо плохо мысль свою раскрыл. Разница между плагинами и скриптами мне понятна и надеюсь всем тоже.
Я подразумевал именно те скрипты, которые люди любят ставить в автозагрузку, а не вызывать изредка по случаю.
+1
Jähman'
"При загрузке 3д Макса прогружаются все скрипты и плагины. И чем их больше, тем дольше загрузка."
Это на 100% не соответствует действительности.

Если вы откроете Plug-In Manager то увидите, что 80% плагинов используют отложенный старт и вообще не загружаются на старте макса, соответственно никак на скорость запуска не влияют. Такие плагины подгружаются по факту первого обращения.

А можете привести пример скрипта в автозагрузке, который хоть на секунду замедляет старт макса?

зы.
Plug-in DLL Defer Loading
A defer loaded plug-in DLL will not be loaded into memory until required by 3ds Max for the first time. Deferring a plug-in is a useful technique for improving the start-up time and reducing the memory footprint of 3ds Max. This is why 3ds Max uses automatic defer loading system. If a plug-in DLL is deferred, it should not impact the user experience.
0
grdesigner
Сугубо на личных ощущениях. Во времена, когда изучал макс, смотрел разные видео и обмазывался скриптами/плагинами как только можно. Пытаясь перенять рабочий процесс. С годами понял, что наиболее стабильно себя ведет программа при минимальном наборе. И да, влияло на первый запуск. Возможно сейчас что то поменялось или я делал неправильно.
+5
Pivotpoint
С комментом выше согласен, есть способы попроще. turntoinstance скрипт вообще в 1 клик все делает.
Но за урок однозначно 5. В очередной раз понимаешь сколько функционала есть в максе, который следует изучать даже после 10-20-30 лет опыта.
+4
petrovich23rus
что за странные комменты про скрипты, это не урок, это решение задачки .
надо из блогов "уроки" в "личное" переместить конечно)
+4
aaaantares
Пока читал вспомнил что лет десять назад уже видел такое, но забыл конечно. Автору лайк, тоже стараюсь всегда в первую очередь искать решение среди стандартных средств макса. Да, загоны.
+17
Oleg.budeanu
Радует, что есть люди, которые понимают, как это работает под капотом и делятся своими знаниями!
Это редкость для этого ресурса.
0
Thomas01
Да я бы не сказал
+2
RUSTTM
хороший и забытый способ, автору респект.
есть еще Substitute - быстрая замена объектов на уровне модификатора. https://youtu.be/HZRM1a1IcBw 
+10
D-d_Man
Эх, молодёжь ))) вы ещё про WireParametrs почитайте - много нового и удобного узнаете. Можно связать любые параметры объектов и материалов как в одну, так и в обе стороны связи. Например в интерьерке - куча светильников разного (условно) размера - но мощность нужна одинаковая - можно связать и регулировать - будет инстансным только параметр мощности - или что выберете. Читайте - и да обрящете )))
За урок лайк!
0
Spirif
Поставил лайк за название )
0
SNikon
интересный подход , лайк за инфу !
0
Yehat
Способ не самый простой, но и скрипт не всегда хорошо отрабатывает (может сместить объекты или повернуть куда не надо). Скриптом кстати можно не просто сделать из копий такие же инстансы, но и заменить копии совсем другими инстансами. Вероятно, и описанный тут способ это умеет.
0
Carpenter_M
http://www.scriptspot.com/3ds-max/scripts/instance-tool
Делает инстанс даже из отзеркаленных и отмасштабированных объектов.
+2
Navik
Этот способ работает для отзеркаленных и отмасштабированных объектов.
+1
alexfmos
Черт, а ведь я иногда делал так с 2015 года, но не думал, что это тянет на урок. Тогда мне показалось плюсом, что можно подменить не только геометрию, но и любой объект вообще.
Но потом я начал пользоваться инструментом "Clone and Align", намного быстрее и проще. Это тоже без плагинов, регистрации и смс, просто на курсах не рассказывают
0
Furron
За способ лайк, но столько ошибок в таком коротком тексте...
0
friendina
Очень хороший и удобный способ, плагин инстансер устанавливала, пыталась освоить по видео, но он у меня не работал, а этот способ легко!))) Спасибо большое за подробную и понятную инструкцию.
0
dedora
Попробовал навбивать:-) несколько editable poly и все иснтансы сложились в один.
Что не так делаю ?
Заранее спасибо за ответ!
0
Yurdjan
не появляется список в левом окошке. где нужно выбрать объект. только world Что может быть?
0
yuraolar
Та же фигня