Всем приветы!
Решил тоже поделиться опытом. Возможно кто-то не знаком с автоматизацией некоторых процессов, а в нашем нелегком деле – это очень важная часть работы, которая помогает экономить время, силы и неВры. Данный обзор будет разбит на 5 частей, 4 из которых будут посвящены Adobe Photoshop… если вы знакомы с одной, то смело переходите к следующей. Возможно глаза я никому не открою, но новичкам точно будет полезно.
Часть 1 – Batch Render
Думаю, с этой функцией знакомы все, кто давно работает в 3ds Max и уроков по ней более чем достаточно, однако если рассматривать автоматизацию в целом, то не будем отрывать от нее кусок и очень кратко рассмотрим, что это такое. Открываем меню Rendering - Batch Render
Batch Render – это пакетный рендер, встроенный в 3ds max, который, после некоторой настройки, позволяет запустить рендер со всех выбранных камер. В верхней части окна настройки, с помощью кнопок Add… Duplicate и Delete мы добавляем, дублируем или удаляем задачу (будем называть это задачей, что бы вы не путались с настройкой самой камеры), которые будут отображаться в окне ниже, где мы имеем возможность поставить галочку напротив нужных нам задач или наоборот выключить их.
Далее настраиваем каждую задачу:
Override Preset – при необходимости можно активировать дополнительную настройку каждого ракурса, указав с какого по какой кадр рендерить (если это анимация), размер кадра в выбранной камере (размер всех камер по умолчанию настраивается в Render Setup, разделе Output Size), а так же кратность разрешения. Ниже присваиваем имя кадру (этот же префикс будет содержаться в названии файла). Выбираем папку, в которую будут сохранены все файлы с выбранной камеры. Выбираем саму камеру для выбранной выше задачи. Далее можно выбрать сохраненное состояние сцены и пресет.
После запуска кнопкой Render в окне Batch Render – запустится обычный процесс рендера, за тем исключением, что по окончанию рендера одной выбранной камеры, сразу запустится следующая выбранная камера с соответствующими настройками. Предварительно настроив сцену и Render Elements (на них мы останавливаться не будем), после окончания пакетного рендера вы получите все файлы с префиксами, сохраненные по папкам, которые вы указали.
Часть 2 – Action (Операции)
Далее нам потребуется Adobe Photoshop (далее ФШ), в котором большинство из нас корректирует текстуры и выполняет постобработку рендера. К сожалению сейчас у меня установлена русскоязычная версия и все примеры будут показаны в ней.
Сразу хочу сказать, что я не буду подробно останавливаться на общем функционале Photoshop – урок скорее для тех кто знаком с его работой.
Одно из главных преимуществ данных скриптов – их не нужно кодить. Достаточно владеть основными функциями ФШ и желательно знать горячие клавиши, которые помогу сделать все быстрее и не накосячить.
Функция представляет собой окно (палитру) программы (горячие клавиши Alt+F9), в котором создается новая операция и при необходимости каталогизируется в отдельные папки. Основана она на повторении выполненных ранее действий и ограничена общим функционалом ФШ и вашей фантазией.
В верхней части окна есть меню, в котором повторяется часть видимых в окне функций, экспортируются и импортируются ранее созданные операции, выбор встроенных операций и др. Фактически, для наших задач оно не потребуется. Ниже расположен каталог, который мы можем редактировать на свое усмотрение – удалять лишние папки, создавать новые, перемещать операции из одной папки в другую, простым перетаскиванием. В самом низу панели расположены кнопки управления операциями (слева – направо): стоп, начать запись редактирования операции, запустить операцию, создать папку, создать новую операцию, удалить выбранное.
Для примера мы попробуем автоматизировать создание текстур из фотографии.
Для начала анализ, в ходе которого мы понимаем, что для бесшовности нужно выровнять тон фотографии и применить функцию «сдвиг», которая смесит несовпадающие края, для дальнейшей корректировки.
Сопровождать каждый шаг иллюстрациями буду частично, иначе это превратиться в книгу. Если рассматривать полную последовательность действий, выглядеть это будет так:
1. Создать дубликат слоя Ctrl + J (появится новый слой «слой 1»)
2. Применить к нему Фильтр - размытие - среднее размытие
3. Вернуться к выбору первого слоя Alt + [
4. Создать дубликат Ctrl + J (появится новый слой «Фон копия») (хз почему не "слой 2")
5. Переместить «слой 2» наверх палитры слоев Ctrl + Shift + ]
6. Применить к «слой 2» режим наложения «перекрытие»
7. Применить к «слой 2» Фильтр – Другое - Краевой контраст c нужными настройками
8. Выполнить слияние видимых слоев Ctrl + Shift + E
9. Выполнить Фильтр – Другое - Сдвиг.
10. Ручная обработка видимых границ текстуры (от этого не уйти в ФШ)
Для автоматизации данного процессе, давайте создадим Action (операцию), который будет это все делать за нас (помните, после начала записи операции, каждый клик, каждая кнопка будут записаны в action и могут привести к неправильной работе скрипта, что в целом лечится удалением этой лишней операции в action (простите за туфтологию)):
Теперь записываем операцию.
1. При необходимости, в окне операций создаем и переименовываем новую папку, например, «обработка текстур» или «мои скрипты»
2. Выбрав нужную папку, в нижней части окна нажимаем кнопку «Создать новую операцию»
3. В открывшимся окне указываем имя будущей операции, папку операций, при необходимости назначаем горячую клавишу, цвет для удобства и нажимаем «Записать». С этого момента идет запись операции, пока не будет нажата клавиша «Стоп» или «Esc». В любой момент запись можно продолжить с любого промежутка, кнопкой «Начать запись» в нижней части окна операций.
4. Выполняем строго последовательно и точно все операции, описанные в анализе выше и в конце нажимаем «Стоп» или «Esc».
Если все выполнено правильно, то в окне операций появится новый скрипт с записанными действиями, каждое из которых можно удалить, переместить или даже перенастроить двойным кликом на действие. В момент перенастройки действия автоматически загорается кнопка записи, а после подтверждения новых настроек, запись автоматически останавливается.
Теперь мы можем взять любую фотографию текстуры и сделать ей выравнивание тона одним нажатием «запустить операцию» или назначенными горячими клавишами.
Если возникает ситуация, когда требуются индивидуальные настройки того или иного действия (фильтра), в окне операций, напротив этого действия устанавливается флажок «паузы» и когда операция доходит до этого действия, откроется окно настройки этого действия, которое продолжится только после подтверждения настройки.
Аналогичным образом, рядом с флажками можно снять галочку, чтобы в выбранной операции, то или иное действие пропускалось (будьте внимательны, если к примеру, вы снимите галочку с действия, критически важного для продолжения операции, то операция будет остановлена с соответствующим оповещением).
В 5й части мы вернемся к операциям, а пока...
Часть 3 – Batch (Пакетная обработка)
У программы Adobe Photoshop тоже есть пакетная обработка файлов. Которая позволяет применить любую операцию к нескольким файлам.
Открываем меню Файл – Автоматизация – Пакетная обработка
О открывшемся окне мы имеем возможность выбирать следующее:
1) Выбрать папку (набор) созданных нами операций или операций, установленных в ФШ по умолчанию и соответственно саму операцию.
2) Указать источник файлов, к которым будут применены операции, например, открытые файлы или папка на жестком диске. Так же тут можно выставить примечания, которые не требуют дополнительных комментариев.
3) Выбрать что делать с ошибками… при необходимости можно сохранить log ошибок
4) Указать что делать по окончанию операции, например, сохранить и закрыть файл (если этого нет в самой операции и в принципе требуется) или выбрать новую папку для обработанных файлов.
5) При необходимости настроить префиксы и формат переименуемых файлов.
Часть 5 – Практика
Давайте попробуем применить операции на примере пост-обработки интерьерных рендеров.
После успешного рендера со всех камер, мы получаем несколько папок, в каждой из которых есть сам рендер + рендер элементы. Наша задача упростить работу по созданию макета обработки и применению минимальной, рутиной обработки к созданным макетам. (Все способы постобработки показаны исключительно для примера и не являются «правильными» или «эталонными»).
1. Запускаем «загрузку файлов в стек» и указываем папку с любой камеры или файлы внутри этой папки.
2. Получаем макет с исходной картинкой разными рендер элементами, требующие от нас:1) общей настройки 2) тонкой настройки. Вот для общей и будем писать скрипт.
3. В палитре операций создаем новую папку «Проект ванной комнаты в Мухосранске»
4. Создаем новую операцию «Предварительная корректировка» (Будем честными – имена будут что-то вроде «qwerty555»
5. Кликаем в палитре слоев на главное изображение с камеры, которое может находиться в любом порядке слоев, в зависимости от имени файла.
6. Запускаем запись кнопкой "Записать"
7. Нажимаем Ctrl + Shift + [ для перемещения главного изображения в в самый низ палитры слоев.
8. К примеру, создаем корректирующий слой «уровни».
9. Нажимаем Alt +] для выбора поверх лежащего, следующего слоя (В моем случае это Raw Component).
10. В палитре слоев кнопку «создать слой-маску» для дальнейшей корректировки.
11. Выбираю режим наложения «Перекрытие»
(Точная настройка будет выполняться позже, поэтому перехожу дальше).
12. Нажимаем Alt +] для выбора поверх лежащего, следующего слоя (В моем случае это CTexmap с картой АО).
13. Выбираю режим наложения «Умножение», нажимаю в палитре слоев кнопку «создать слой-маску» с зажатым Alt, чтобы скрыть слой за маской. (Точная настройка будет выполняться позже, поэтому перехожу дальше)
14. Нажимаем Alt +] для выбора поверх лежащего, следующего слоя (В моем случае это CMasking_ID, которая сейчас мне совершенно не нужна, поэтому нажимаю Ctrl + , что бы скрыть этот слой).
15. Нажимаем Alt +] для выбора поверх лежащего, следующего слоя (в моем случае это Reflect).
16. Выбираю режим наложения «Экран»
17. Нажимаю кнопку «создать слой-маску» с зажатым Alt, чтобы скрыть весь слой за маской для следующей корректировки.
18. Останавливаю запись операции "Esc".
Теперь, с помощью "загрузить файлы в стек" создаем новый макет со следующим ракурсом и выбрав главное изображение запускаем скрипт кнопкой "выполнить" в палитре операций или назначенной горячей клавишей. Всем нужным слоям будет применен нужный режим наложения, ненужные слои скрыты, корректирующим присвоена маска итд итп.
Конечно рендер элементов и корректирующих слоев может быть гораздо больше… все показано исключительно для примера. Во всей этой истории есть много нюансов, так как это не код и очень сложно продумать универсальный сценарий, если он достаточно сложный. Хотя уверяю, те кто не был знаком с описанными функциями и часто сталкивается с обработкой в ФШ, вы найдете применение этим методам работы.
P.S. На форуме блог ваяю первый раз, так что за оформление и многобукав извиняйте)