Необходимо написать скрипт для макса

Автор
Сообщение
На сайте c 05.09.2013
Сообщений: 2
Минск

Добрый день.

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

Дано:

Есть структура папок, одинаковая для всех проектов, вроде такой:

D:\projects\001\textures\

D:\projects\002\textures\

У каждого проекта есть своя папка “textures” с текстурами этого проекта.

Задача:

При старте макса, скрипт проверяет заданную корневую папку “D:\projects\” с проектами на наличие внутри нее подпапок "textures”, и находя их, записывает пути в user paths, если таковых там не имеется.

Т.к. новые проекты появляются часто, и есть несколько компов/нодов, не всегда руки доходят прописать в каждый из них пути к текстурам нового проекта, как следствие - проблемы при распределенном рендере, да и просто на это тратится время. Поэтому хотелось бы, чтобы каждый комп сам прописывал себе пути к текстурам для свежих проектов.

Интересует может ли кто-нибудь здесь реализовать нечто подобное и сколько это будет стоить? Пишите здесь или в личку. Спасибо! smiley-smile.gif

На сайте c 14.06.2012
Сообщений: 15450
Москва

По-моему вам просто нужен сервер для проектов с текстурами и старый добрый скрипт Relink Bitmaps.

Шарить максом по папкам через User Paths при открытии каждой сцены - хуже не придумаешь. 

Просто работаете с сервера через абсолютные пути //server/projects/bla-bla-bla... а пропавшие текстуры подключаете через Relink Bitmaps, и всё.

На сайте c 24.05.2009
Сообщений: 10092

Я вообще не понимаю зачем усложнять раздел User Path? Вы же понимаете, что при КАЖДОМ старте 3д Макса он пробегается по всем путям и чем этих путей больше, тем дольше он будет шерудить по винту?

Разве так сложно, мержанул модель, скопировал текстуры, в ассет трекинге выделил, которые миссинг, дал новый сетевой путь. Дел на 1-2 минуты вместе с мержем.

На сайте c 17.11.2006
Сообщений: 738
Краснодар
Как-то все запутанно и сложно у нас в студии 4 компа и сервер, на котором есть папка R\projects\2018\  когда создаем новый проект - открываем макс - далее Manage - set project folder - заходим  в папку 2018 создаем папку проекта Name_project - макс сам создаст структуру папок - там автобеки, пресеты превью и тд. у нас все текстуры храняться в папке Scene assets\Imege. далее если надо открыть на любом компе файл и чтобы не было проблем с текстурами при сетевом рендере  просто открываем Manage - set project folder\Name_project -  тогда макс автомматом будет брать текстуры  из папки Image -  и стальные компы будут оттуда же их брать, автобек тоже автоматом будет сохраняться в папку с проектом и не потеряется ничего
На сайте c 05.09.2013
Сообщений: 2
Минск

Воу, спасибо всем за быстрый отклик smiley-smile.gif

Исторически так сложилось, что работа организована через dropbox (работа из разных мест+подключение дополнительных людей+постоянный бэкап в облаке+версионность файлов и тд.) и он отвечает за синхронизацию файлов между ПК, но возможно сейчас есть смысл настроить работу через сервер.

Тогда встает вопрос:  насколько будет открытие/сохранение/старт рендера нагруженного проекта экстерьера (2-3 гб файл+текстуры/проси/..) с сервера медленнее, чем открытие с ПК на SSD/m.2 этого же проекта? Не доставляет ли это не удобств в работе? 

2 Slazzo:

Если я правильно понял, при работе с относительными путями макс ищет папку заданную "\textures" в той папке, из которой открыт текущий файл? Но вроде как при распределенном рендеринге в короне сцена отсылается на ноду в какую-то левую папку и открывается максом на ноде оттуда:

"C:\Users\rakunator\AppData\Local\CoronaRenderer\DrData\received_scene_353361366.max"

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

На сайте c 14.06.2012
Сообщений: 15450
Москва
Можно класть все файлы в папку со сценой, тогда переназначать не надо, само подхватится, но будет бардак.
На сайте c 04.05.2011
Сообщений: 95
Баку-Сумгаит
Мир !   открываете сетевой доступ либо постоянный либо на время запуска виза к диску с текстурами... ( плохая практика раскидывать текстуры и прочие ассеты что используются постоянно в  папки с рабочими проектами ...такая дубликация наплодит проблемы в будущем...там лучше хранить ресурсы касающиеся только текущему проекту) ... есть такая штука для  операций отвечающих вашим требованиям...называется Project manager  ... используйте  ее опцию ...

она переводит ваши абсолютные пути в сетевые ...и все рендер ноды  будут обращаться  к ним 

в случае необходимости можно пути сделать обратно локальными ...нажимаете опцию строчкой выше

этот метод наиболее универсален и не нужно никак постоянно коллектить ресурсы и тем самым мусорить в болванке

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