Render.ru

Окончательное решение проблем с файловым хаосом, TO CollectoREX

Tertium Organum

Пользователь сайта
Рейтинг
2
#1
Чур не считать это рекламой! Я пытался посоветоватся с модераторами, но никто мне не ответил. Решил остановиться на копромисе, не буду указывать ссылки, кому интересно, нагуглит :)
Не хотелось бы что бы посчитали за рекламу и забанили сразу, но если уж так то не судьба.
Итак, суть вопроса, несколько длинно, зато от души:)

Некоторое время назад искал (и у вас на форуме) скрипт, который бы решал проблему со стандартными Resource Collector и Archive в максе (они работают мягко говоря не всегда верно). Исчерпывающего ответа на свои вопросы так и не нашел и сел писать свой. Если интересно, процесс создания его освещен на другом форуме, который без труда можно нагуглить. Первая версия называлась TOCollector, вторая TOCollectoREX. Первая версия была по функционалу близка к тому что существует, но этот функционал оказался несколько наивен для реальнго мира, и еще пару месяцев ушло на создание и обкатку полноценной замены Resource Collector (TOCollectoREX).
Утилита делает еще кучу чего помимо сбора файлов и позволяет на своей основе выстроить воркфлоу. Сайт ее опять же можно нагуглить. Там подробно описано, что в ней хорошего. Моим коллегам штуковина очень понравилась, да собственно не только им. Она реально может облегчить жизнь кучи народа. Жаль народ, мучаются ведь, как я и мои коллеги в эру до TOCollectoREX :)
Поехали!..

Сначала был TOCollector... Нет, ну совсем сначала был Recource Collector, поставляемый с максом, но этого считай что не было - проблемы одни от него.
Итак, месяц работы и появился Tertium Organum CollectoREX, о котором дальше и пойдет речь.
По русски получается чтото вроде "король коллекторов" smile.gif , но к сточным водам он отношения не имеет... Хотя приблизительно сточную канаву и напоминала у меня папка с проектами, содержащими тысячи несуществующих путей. Но теперь это все в прошлом. Resource Collector est mort! Vive TOCollectoREX! Итак, встречайте!

Tertium Organum CollectoREX

Функции утилиты
1. Collect resources – сбор всех ресурсов (а именно: изображений, изображений HDR, Vray mesh’ей, IES-файлов, файлов шейдеров), на которые ссылается текущая сцена или все XRef-дерево, в указанные папки и модификация в этих сценах ссылок на эти файлы
2. Unused – поиск в указанных папках файлов, на которые нет ни одной ссылки в текущей сцене или во всем XRef-дереве. Найденные файлы можно удалить или перенести в «локальную корзину» - папку «$trash$», создающуюся той в папке, где найдены неиспользуемые файлы
3. Relink to resources roots – попытка переписать все ссылки сцены или всего XRef-дерева так, чтобы они ссылались на файлы с теми же именами внутри заданных папок сбора. Если какого-то файла не найдено в указанных папках сбора, ссылка на него остается нетронутой. Эта функция нужна при «переезде» сцены или ее папок сбора на новое место
4. Resolve links to existing – выяснение реального (а не сохраненного в ссылках) местоположения файлов, на которые ссылается сцена или все XRef-дерево, и изменение ссылок, чтобы они ссылались на реальные файлы
5. Missing files Identity – выдача информации о том, в каких объектах сцены или Xref-дерева находятся ссылки на несуществующие файлы (Missing files), с выводом полного дерева ссылки
6. Convert to JPEG/TGA – конвертация файлов с расширениями ".tif", ".tiff", ".psd", ".png", ".tga" и ".bmp" в файлы jpeg или tga с RLE-компрессией (если у файла присутствует альфа-канал и пользователь хочет сохранить его)



Технические условия и рекомендации по использованию
Tertium Organum CollectoREX создан для работы со сценами, предназначенными для визуализации с помощью стандартного Scanline Renderer или VRay. С материалами Fry Renderer утилита не работает, у материалов Maxwell Renderer может извлекать информацию только о текущем слое (layer) и текущей оболочке (coating).
Утилита протестирована на совместимость с 3dsmax версий: 9sp1-sp2, 2008, 2009. Работа с версией 9 без sp1 и более ранними версиями невозможна.
Сетевые пути поддерживаются, главное – чтобы сетевые папки были открыты на запись.
Желательно перед использованием утилиты перезагружать 3dsmax. Утилита оперирует большими массивами данных, поэтому возможны неполадки в работе сборщика мусора MAXScript. В некоторых случаях нестабильность и накапливающиеся сбои сборщика мусора MAXScript приводит к критическому сбою 3dsmax.
Также рекомендуется увеличить размер Initial Heap Allocation в закладке MAXScript окна Preference Settings (пункт меню Customize->Preferences…) хотя бы до 100Мб. Это позволит утилите работать стабильней.

Вай чуз Tertium Organum CollectoREX

* позволяет собирать ресурсы только выбранных типов
* собирает ресурсы разных типов в разные папки (но может и в одну)
* предлагает варианты действий, если копируемый файл имеет то же имя, что и файл, уже существующий в папке сбора; предлагает уменьшенные изображения и информацию для адекватного выбора варианта действия
* при сравнении файлов с одинаковыми именами использует сравнение изображений с учетом и без учета альфа-канала (если это изображения или HDRI) и подсчет контрольной суммы (если это не изображения)
* собирает только реально задействованные в сцене ресурсы – в обход Asset Tracking
* по желанию может не учитывать содержимое Material Editor, не примененное к сцене, и вообще очищать его перед любой операцией
* не учитывает ресурсы, относящиеся к Scene States
* при сборе переписывает ВСЕ ссылки на ВСЕ собранные ресурсы так, чтобы они указывали на реальные файлы, а не только на те, которые не присутствуют в папках пользователя (User Paths)
* имеет множество настроек, которые автоматически сохраняются вместе с каждой сценой и загружаются из нее
* позволяет сохранить настройки в глобальные умолчания пользователя, чтобы не выставлять их каждый раз
* позволяет выстроить workflow, основанный на периодическом сборе ресурсов и ведении трёх или менее папок сбора в полуавтоматическом режиме (файлы копируются и удаляются ненужные с помощью утилиты)
* создает файлы резервного сохранения (один или много – инкрементное резервное сохранение) сцен, но не средствами 3dsmax (просто копирует текущий файл): сохранение средствами 3dsmax иногда приводит к сбою и потере данных
* автоматически сохраняет сцену после операции утилиты: можно не опасаться, что по завершении операции утилиты пользователь забудет сохранить файл или произойдет сбой и данные будут потеряны
* позволяет установить, в каких именно объектах находятся ссылки на ненайденные файлы (Missing files)
* позволяет принудительно задать местоположение всех типов ресурсов тремя папками
* позволяет без копирования файлов переписать все ссылки так, чтобы они ссылались на файлы с теми же именами внутри заданных папок сбора; это может понадобится при перемещении проектов на другие машины или диски
* выдает информацию о реальном местоположении файлов, на которые ссылается сцена, и позволяет соответственно переписать все ссылки на них
* показывает (после сбора), какие файлы внутри папок сбора не задействованы в проекте, и позволяет удалить их или перенести в локальную корзину
* конвертирует несжатые «большие» изображения (".tif", ".tiff", ".psd", ".png", ".tga" и ".bmp") в JPEG или TGA+alpha для экономии места на диске и ускорения загрузки сцены
* позволяет обрабатывать все файлы, связанные с текущей сценой посредством XRef-ссылок всех типов, в batch-режиме
* обладает защитой от сбоев 3dsmax для batch-режима: в процессе обработки нескольких файлов запоминает текущее состояние, чтобы в случае сбоя 3dsmax продолжить выполнение при следующей сессии
* подробно протоколирует свои действия в файлы лога, чтобы по завершении операции всегда можно было установить все детали; имена файлам лога даются инкрементно
* позволяет прервать операцию на любом этапе, в том числе и операцию в batch-режиме

Типичная схема работы с утилитой (workflow)
Пользователь создает сцену, подключает к ней различные ресурсы и редактирует ее. После завершения каждого этапа (если его работа подразумевает деление на этапы) или просто периодически пользователь использует функцию утилиты Collect resources. По мере надобности (например, по факту завершения разработки сложных текстур в Adobe Photoshop) он использует Convert to JPEG/TGA и время от времени – Unused, чтобы установить, какие ресурсы больше не нужны, и их можно удалить. Если в сцену добавляются объекты из других сцен, пользователь может использовать Resolve links to existing, чтобы установить, какие реально существующие ресурсы загружаются в импортированный кусок сцены. Если какие-то файлы выводятся в списке Missing Files при загрузке сцены, можно использовать Missing Files Identity, чтобы установить, какие именно объекты включают потерянные файлы и устранить проблему.
Та же схема работы, если сцена использует XRef-ссылки, но возможно использование Continue op after crash при сбоях 3dsmax.
Для удобства пользователь может сохранить конфигурацию утилиты как глобальные умолчания (например, если он предпочитает обычное резервное сохранение инкрементному или не желает, чтобы Material Editor очищался с выполнением каждой операции утилиты).

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

Полная дока на сайте программы.

Во как :)
 
Сверху