Скрипт Collect Asset

Автор
Сообщение
Возраст: 41
Пол: М
На сайте c: 10.07.2008
Сообщения: 1674
Откуда: Украина, Киев

Решил создать тему по своему скрипту Collect Asset. Качать тут

Пишите в тему, если найдете ошибки, или знаете, как его улучшить, или можете что-то подсказать. Или если что-то не понятно.

ed7cad9fe80a53f466b82beff8c986fe.jpg

Скрипт предназначен для сбора всех текстур и других используемых в сцене файлов в одну папку. Имеется проверка на совпадение имен файлов.

Скрипт видит специфические карты (например VRayBMPFilter, Camera_Map_Per_Pixel). Так же скрипт обрабатывает тектуры в XRef файлах.

Описание работы:

Вверху статусная строка. Показывает сколько карт с полными путями (Ok), сколько фалов найдено по другому пути (Found), и сколько файлов не найдено (Missing).

Path to seek textures - позволяет выбрать папку для дополнительного поиска текстур

Кнопка Seek - совершает поиск потерянных текстур в папке для поиска. Подпапки не учитываются.

Resolve path - прописывает всем найденным картам полный путь, по которому их нашел 3ds max.

Del Missing Paths - удаляет потерянные текстуры.

Selected Directory - Путь для сбора всех текстур.

Collect Files - собтвенно кнопка для начала сбора. Если стоит галка "and relink..." - то в сцене пропишутся пути к новому месту (не забудте сохранить сцену после этой операции). Если поставить галку "from selected objects", то текстуры соберуться только с выделенных обьектов. Собираются только используемые в сцене текстуры. Если в мат.эдиторе есть не назначенные материалы, текстуры с них не будут обработаны.

При копировании производится проверка на одинаковые имена файлов. Если в папке сбора уже существует файл и размер у него отличается от копируемого, то выдается окно сравнения текстур и выбора действия, что с ними делать. Можно заменить, использовать существующую или переименовать.

Set Path - Назначет всем текстурам путь к указанной директории. Это полезно, когда перенесли сцену с текстурами в другую папку или другой компьютер, и нужно переназначить пути к текстурам, что-бы компьютер их все время не искал (при том что компьютер может найти не правильную текстуру в другом месте).

Rename Russian - Заменяет русские символы английскими в именах файлов. Новые файлы складывает в указанную директорию и прописывает к ним пути в сцене.

Make Archive - Создает архив сцены с текстурами в формате 7zip или zip. Текстуры помещает в папку maps.

Скрипт с открытым кодом. Если кому интересно - может покопаться в нем. Или изменить под свои нужды.

Для установки в 3ds max выберите меню Scripting -> Run Script... и выберите скачанный файл. После этого зайдите в меню Customize -> Customize user interface -> Toolbars. Category: # Scripts. Перетащите скрипт на любую панель в удобное для вас место.

Для обновления проведите установку новой версии и она заменит старую.

Версия v2.098

- Добавил опцию исключения Xref файлов при коллекте ассетов

Версия v2.092

- Добавлено еще несколько классов (Corona LUT, Forest Pack...)

- Добавлена кнопка "Del RE Paths" которая очищает пути в рендер элементах.

Версия v2.09

- Поддержка Final Render

- Исправлены проблемы с Redshift

- Добавлен класс BitmapHDR

- Добавлена кнопка "Strip paths"

- Исправлены некоторые ошибки

Версия v2.08

- Добавлена поддержка FStorm и Redshift

Версия v2.07

- Исправил ошибку в обработке источников света. Теперь скрипт их обрабатывает намного быстрее.

- Исправил еще некоторые ошибки

Версия v2.05

- Добавлена функция поиска текстур в указанной папке

Версия v2.04

- поддержка Octane Render

- собирает сиквенцию из ifl фалов

- собирает point cache

- теперь проверяет файлы с одинаковыми именами не по размеру, а по чексуму

- быстрее проводит повторное сканирование файлов после выполнения операций

- можно автоматически повторять операции сравнения одинаковых файлов

- теперь есть лог файл и окно логов операций

- изменилось окно выбора папки

- исправлены ошибки

Создал версию 2. Полностью переписал скрипт и изменил метод работы с файлами. Ушел от максовского Aseet Tracking. Теперь скрипт работает в некоторых моментах быстрее, но главное должен работать надежнее. Пока что интерфейс и функционал остался прежним.

- Видит карты VRayBMPFilter, Camera_Map_Per_Pixel, CoronaBitmap

- Обрабатывает Xref файлы и ссылки внутри них

- Добавлена функция переименования русских символов

p.s. Пожалуйста, отписывайтесь об ошибках. Не молчите, если что-то не работает, или работает не так как нужно. Это важно. Я не всегда могу все протестировать в одиночку.

Вы можете отблагодарить меня за скрипт материально, если желаете.

Возраст: 34
Пол: М
На сайте c: 09.06.2013
Сообщения: 382
Откуда: Тюмень
Привет, вылазит ошибка, если в названии текстур присутствует значок &. Можно ли это пофиксить?
Возраст: 41
Пол: М
На сайте c: 10.07.2008
Сообщения: 1674
Откуда: Украина, Киев
Цитата Maketer:
Привет, вылазит ошибка, если в названии текстур присутствует значок &. Можно ли это пофиксить?

Спасибо, об этой ошибке на знал. Есть аналогичная если $ стоит в начале имени файлов текстур. Пока что правьте имена файлов вручную. Я постараюсь это пофиксить в будущем

Репутация: 0
Возраст:
Пол: М
На сайте c: 03.10.2019
Сообщения: 3
Откуда:
Как удалить скрипт? После установки макс выдает множество ошибок, работает некорректно. Как его убрать совсем?
Возраст: 41
Пол: М
На сайте c: 10.07.2008
Сообщения: 1674
Откуда: Украина, Киев

shevkunova83

Скрипт не должен влиять на 3д макс. Это не плагин. Он не подгружается при загрузке макса. Только когда вы его запускаете. Вы его правильно установили? Не нужно ничего копировать в автозапуск или еще какие-то папки макса.

c:\Users\Anton\AppData\Local\Autodesk\3dsMax\Версия макса\ENU\scripts\Collect_asset\ - тут лежит настройки скрипта

c:\Users\Anton\AppData\Local\Autodesk\3dsMax\Версия макса\ENU\usermacros\_ Scripts-Collect_asset_2.mcr - тут лежит сам скрипт

Репутация: 0
Возраст:
Пол: М
На сайте c: 03.10.2019
Сообщения: 3
Откуда:
Я его установила перетаскивая файл .mzp в окно 3д макса. До него вообще таких проблем не было, никогда. Постоянно выскакивают какие то окна, какие то ошибки. Чтоб его удалить, нужно удалить его по этому пути - c:\Users\Anton\AppData\Local\Autodesk\3dsMax\Версия макса\ENU\usermacros\_ Scripts-Collect_asset_2.mcr ? И все? Или еще что-то нужно удалять?
Возраст: 41
Пол: М
На сайте c: 10.07.2008
Сообщения: 1674
Откуда: Украина, Киев
Цитата shevkunova83:
Я его установила перетаскивая файл .mzp в окно 3д макса. До него вообще таких проблем не было, никогда. Постоянно выскакивают какие то окна, какие то ошибки. Чтоб его удалить, нужно удалить его по этому пути - c:\Users\Anton\AppData\Local\Autodesk\3dsMax\Версия макса\ENU\usermacros\_ Scripts-Collect_asset_2.mcr ? И все? Или еще что-то нужно удалять?

да, удаляйте всё с названием Collect_asset
Возраст:
Пол: М
На сайте c: 24.04.2013
Сообщения: 1
Откуда:
Thanks for this great script!would it be possible to update the script to somehow use "Everything" application to find the missing assetshttps://www.voidtools.com/   it is super fast and can find any file in realtime, so it would be great to use it with your scriptsThanks.
Возраст: 41
Пол: М
На сайте c: 10.07.2008
Сообщения: 1674
Откуда: Украина, Киев
Цитата Maxryhan:
Thanks for this great script!would it be possible to update the script to somehow use "Everything" application to find the missing assetshttps://www.voidtools.com/it    is super fast and can find any file in realtime, so it would be great to use it with your scriptsThanks.

Hi. this interesting. I will think about this
Возраст:
Пол: М
На сайте c: 15.01.2009
Сообщения: 36
Откуда:
Добрый день! Очень полюбился ваш скрипт! Подходит ли он для 2021 версии 3д макс?
Возраст: 35
Пол: М
На сайте c: 10.07.2008
Сообщения: 1219
Откуда: Екатеринбург
Цитата AlexDonRumata:
Добрый день! Очень полюбился ваш скрипт! Подходит ли он для 2021 версии 3д макс?

все работает

Возраст:
Пол: Ж
На сайте c: 12.10.2017
Сообщения: 1
Откуда:
здравствуйте! есть ли другой способ установить скрипт - не по инструкции, ибо при нажатии run script макс просто не видит скачанного файла .mzp
Возраст: 31
Пол: М
На сайте c: 03.12.2008
Сообщения: 515
Откуда: Весь мир =) путешествую =)
Цитата ksushabur:
здравствуйте! есть ли другой способ установить скрипт - не по инструкции, ибо при нажатии run script макс просто не видит скачанного файла .mzp

я обычно перетягиваю его просто в окно макса =) Должно помочь.

Возраст:
Пол: М
На сайте c: 28.02.2009
Сообщения: 4
Откуда:
Выдает ошибку в 2019 максе, окно висит но  в нем ничего не работает.

Возраст: 41
Пол: М
На сайте c: 10.07.2008
Сообщения: 1674
Откуда: Украина, Киев
Цитата yuROCK:
Выдает ошибку в 2019 максе, окно висит но  в нем ничего не работает.

Ему не нравится имя файла, начинающееся на $. В будущем я исправлю эту проблему. Сейчас вам придется вручную переименовать этот файл и назначить его в материале
Возраст:
Пол: М
На сайте c: 25.11.2020
Сообщения: 1
Откуда:
стал вылетать Макс при запуске скрипта, первое нажатие -  НЕ появляется окно скрипта, второе нажатие - Макс вылетает. работаю со скриптом уже 2 года, все было отлично до данного момента
Возраст: 41
Пол: М
На сайте c: 10.07.2008
Сообщения: 1674
Откуда: Украина, Киев
Цитата MetaArch:
стал вылетать Макс при запуске скрипта, первое нажатие -  НЕ появляется окно скрипта, второе нажатие - Макс вылетает. работаю со скриптом уже 2 года, все было отлично до данного момента

странное дело. Не сталкивался с таким. Свяжитесь со мной по скайпу или другим личным способом. Попробую помочь
Репутация: 0
Возраст:
Пол: М
На сайте c: 25.04.2015
Сообщения: 1
Откуда:

Доброго дня, стал вылетать макс при запуске скрипта , как это "вылечить"?

Возраст:
Пол: Ж
На сайте c: 23.07.2018
Сообщения: 3
Откуда:

Здравствуйте! Скрипт установила перетаскиванием в окно макса. Кнопка вроде как есть, но без картинки. Только если навести курсор мышки на нее, рядом появляется название. Перезагрузка макса и компа не помогла. Подскажите, пожалуйста, что сделать чтобы картинка на кнопке появилась?

Возраст: 32
Пол: М
На сайте c: 12.03.2013
Сообщения: 709
Откуда: Ростов-на-Дону

У меня вопрос по скрипту, заранее сорри, если тут это уже всплывало и я не нашёл. Иногда скрипт копирует не все текстуры, если вот тут написано 0 missing, значит он же должен остальные 13 скопировать? 

но иногда не копирует. Хотелось бы понять, в чём разница между found и ok? Я нашёл решение, проверять asset tracking, чтобы пути были правильно прописаны и без сокращений, тогда всё ок. Но это как то геморно. Может добавить кнопку, чтобы эти пути как-то автоматически прописывались?Вот например:Тут прописан неправильный путь к текстуре, несуществующий

Но если нажать strip patch

И потом make patch absolut, то путь прописывается правильный

Есть ли способ это дело автоматизировать? Или просьба добавить такую возможность.

vsvst можно правой кнопкой нажать на это место, выбрать eddit button и там выбрать любую иконку

Возраст: 41
Пол: М
На сайте c: 10.07.2008
Сообщения: 1674
Откуда: Украина, Киев

Цитата vsvst:

Здравствуйте! Скрипт установила перетаскиванием в окно макса. Кнопка вроде как есть, но без картинки. Только если навести курсор мышки на нее, рядом появляется название. Перезагрузка макса и компа не помогла. Подскажите, пожалуйста, что сделать чтобы картинка на кнопке появилась?

Не скопировались иконки. Попробуйте запустить установщик через Run script. Дать права администратора, когда спросит.

Цитата iolanta989:
Иногда скрипт копирует не все текстуры, если вот тут написано 0 missing, значит он же должен остальные 13 скопировать?

да, должен скопировать. Если у вас не копирует - пишите мне лично в скайп anton_mor или еще куда-то. Покажите как это происходит. Я попробую исправить.

Цитата xiruim:
в чём разница между found и ok?

так же как и в Asset Tracking. ok - путь указан правильный к текстуре. found - путь не правильный но текстура найдена по другому пути.

Цитата xiruim:
Может добавить кнопку, чтобы эти пути как-то автоматически прописывались?

Кнопка Resolve Paths делает это. Меняет неправильные пути на пути где 3дмакс нашел текстуру

Читают эту тему: