RSS Подпишитесь на наш канал YouTube Google+ Twitter Facebook Вконтакте На главную 3ds max Illustrator Photoshop V-Ray pdf InDesign

Много рендеров – хорошо, а один – лучше. Часть 2. Коррекция в Photoshop.

01После того, как визуализация разложена по слоям в Photoshop (это описано в части 1), можно заняться цветокоррекцией как всего изображения, так и изменением отдельных его частей.

Цветокоррекция всего изображения

Если бы вы захотели сделать картинку более яркой, что бы вы сделали? Первое, что приходит в голову – команды из меню Image –> Adjustments (Режим –> Корректировка). Однако проблема их в том, что, применив их, мы уже не имеем возможности в будущем изменить сделанное. То есть, если сохранить файл, закрыть его и открыть заново, мы уже не сможем вернуть старую картинку. Даже если и обратно ее затемним, информации о цвете уже будет недостаточно, чтобы вернуть прежнее изображение. Скажем, вы осветлили зеленый предмет настолько, что он стал белым. Сохранили файл и опять его открыли. При попытке этот предмет вернуть к прежнему состоянию, то есть при попытке обратно его затемнить, вы не получите зеленый цвет, а получите оттенки серого. И вправду, откуда совершенно белому пикселю знать, какой у него когда-то был цвет? То же самое, только в относительно меньшей степени, происходит в случае пусть даже незначительной коррекции этими командами.

Чтобы сделать изображение, например, более ярким, контрастным или усилить цвета, вместо стандартных команд удобно использовать корректирующие слои (adjustment layers).

layerspanelWithAdjLayers Корректирующий слой (adjustment layer) – это по сути та же команда, что и в упомянутом меню, только в виде слоя. Можно понимать ее как команду-слой. Корректирующий слой можно в любой момент включить/выключить photoshop_layer-on, отрегулировать непрозрачность photoshop_opacityи задать определенный режим наложения photoshop_blending-mode. Корректирующие слои можно, разумеется, друг на друга наслаивать.Корректирующий слой добавляется через меню Layer –> New Adjustment Layer или кнопкойphotoshop_new-adjustment-layerв панели Layers(Слои).Корректирующие слои корректируют нижележащие слои. То, как именно они корректируют, задается настройками в панели Adjustments (сверху от панели Layers), которые появляются там при двойном щелчке на иконке справа от значка глаза photoshop_layer-on.Таким образом, открыв файл в следующий раз, мы сможем внести изменения в корректировки, которые когда-то сделали.

32-битное пространство цветов

Почему, когда мы сохраняли EXR в предыдущем уроке, выбрали галочку “EXR Use 32-bit output”? Потому что 32-битное пространство дает больший диапазон между светлыми и темными пикселями, чем 8 и 16-ти битное. Пример 8-битной картинки – фотография, сделанная обычной “мыльницей”:
8bitImage

Разумеется, мы хотим ее сделать более яркой и светлой. В результате осветления командой, например, Exposure или Levels, или добавления соответствующего корректирующего слоя, получается примерно так:

8bitImage_brightened

Такое плохое качество объясняется тем, что 8-битное цветовое пространство имеет недостаточный диапазон “от темного к светлому”, чтобы вытянуть темную картинку. Photoshop может “вытянуть” только те участки, которые мы на темной картинке можем различить глазом. Те же, которые не может вытянуть (о которых ему не хватает информации), он делает серыми.

В противоположность 8-битному, 32-битное изображение имеет такой большой диапазон “от темного к светлому”, что он не может быть одновременно полностью показан на мониторе (который показывает в 8-битном пространстве). Монитору приходится из этого диапазона вырезать для показа определенный 8-битный участок яркостей. Так вот, если перед нами 32-битная картинка темная, то это значит, что монитор нам только показывает темный участок яркостей. Но мы можем с помощью команд или корректирующих слоев (Exposure, например), сдвинуть этот отображаемый диапазон в в более яркую сторону без ущерба деталям в плавных переходах. 32-битное изображение имеет большую градацию яркостей, переходы от света к тени получаются при изменении яркости (экспозиции) более плавными.

01

Так же можно и затемнить 32-битное изображение, если оно пересветленное.

Что касается 16-битного пространства, то оно представляет собой среднее между 8- и 32-битным.

Коррекция отдельных объектов

Вооружившись теоретическим пониманием того, как это работает, перейдем к самому интересному, ради чего все это и затевалось.

В этой части рассмотрим ситуацию, когда надо изменить цвет отдельного объекта в сцене. Как это сделать? Учитывая то, что у нас имеется отдельный слой цвета – VRayDiffuseFilter, нужно просто выделить в нем нужную область и применить команду коррекции… Отражения и все прочее останутся нетронутыми, ведь они на других слоях.

Быстрый и грубый способ это сделать – выделить на изображении объект инструментами вроде лассо, волшебной палочки или пера, а потом применить к выделенной области команду, например, Hue/Saturation/Lightness (Оттенок/Насыщенность/Яркость), чтобы изменить ее цвет.

Но выделять может оказаться непростой задачей, если объект сложный, например, пушистый ковер; к тому же даже идеально простой и гладкий по контуру объект никак не получится выделить “пиксель в пиксель”, а это приведет к не самым идеальным краям после коррекции.

Поэтому мы возвращаемся в 3ds max для того, чтобы выделить объект или группу объектов, которые хотим изменять в Photoshop.

Щелкаем на интересующем объекте или группе объектов правой кнопкой мыши, из контекстного меню выбираем Object Properties (Свойства объекта) и задаем ему объектный идентификатор (Object ID). Не пугайтесь, назначение идентификатора – это не что-то страшное, это просто способ пронумеровать объекты. Подобно тому, как объектам в 3ds max можно давать имена, точно также можно им давать и номера, через Object ID, это просто еще один способ дать нам и 3ds max’у возможность отличать объекты между собой. По умолчанию все объекты имеют ID равный 0. Поэтому, чтобы как-то его отметить среди остальных (в данном случае, для целей выделения в Photoshop), мы даем ему этот идентификатор. Это может быть любая цифра, отличающаяся от цифр остальных объектов (например, все объекты в сцене сейчас равны 0, так что мы сделаем, к примеру, 1). В данном случае я выбрал для эксперимента второй шкаф справа.

setObjID

Далее в панели Render Elements настроек рендера VRay удаляем предыдущие элементы рендера (VRayDiffuseFilter и т.д., ведь у нас уже есть послойный файл в Photoshop из предыдущего урока, а лишние элементы только добавят слегка время рендера) добавляем кнопкой Add рендер-элемент MultiMatteElement.

В его настройках, что появились внизу, Untitled-3

зажигаем галочку R gbufIDOn и в поле R gbufID вводим Object ID, только что присвоенный интересующему объекту. В данном случае это 1.

Untitled-2 Что ж, теперь можно выключить все, что тормозит рендер, как то Indirect Ilumination

GIoff

и галочки во вкладке Global Switches:

Untitled-5

Смысл этого вам станет ясен по завершении этого параграфа.

Обратите внимание, что настройки антиалиасинга и настройки во вкладке Settings должны быть, по возможности, такими же, какие они были раньше (т.е. при получении той картинки, что сейчас собрана послойно в Photoshop).

Во вкладке Frame buffer зажгите галочку Render to memory frame buffer, чтобы рендер выводился в рендер-окно VRay’я.

Untitled-1! В настройках сохранения формата EXR выберите не Full Float, а 8-бит.

Если хотите ускорить рендер, выделите нужную область для рендеринга, используя функцию Region или рамочку в окне рендера VRay. Нажмите Render и сохраните элемент MultiMatteElement в несжатом виде (подойдет, например, формат TIFF).

Untitled-6

Откройте его в Photoshop, и в панели Channels (Каналы) выберите красный канал (Red), выделите все (Ctrl+A), скопируйте Ctrl+C, создайте новый канал в файле сборки рендера

Untitled-7

и вставьте скопированное (Ctrl+V) в этот канал. Теперь у нас в панели Channels имеется сохраненное выделение интересующего объекта.

Если вы не выбрали в настройках сохранения формата EXR пункт Full Float вместо 8-бит, то заметите, что область выделения в канале получилась не белая, а сероватая. Это потому, что красный канал не идеально светлый (не белый), а немного темный. Нам нужно его сделать не серым, а белым. Для этого просто осветляем его, например командой Image –> Auto Tone. Белый цвет гарантирует, что выделение будет полным, а не частичным, как в случае с сероватым каналом.

Щелкаем с зажатой клавишей Ctrl на картинке канала, чтобы получить из него выделение

Untitled-8Выделяем тот слой (элемент), в котором хотим изменить выделенный объект, допустим, хотим изменить его цвет. А цвета, как мы помним, хранятся в слое VRayDiffuseFilter.

Untitled-9Добавляем корректирующий слой для изменения цвета Hue/Saturation/Lightness (Оттенок/Насыщенность/Яркость). Выделенная область автоматически превратится в его маску, которая будет маскировать его влияние (белое – полное влияние, черное – нет влияния).

Зажав клавишу Alt, щелкаем на границе между ним и нижележащим слоем. Это заставит корректирующий слой влиять только на один нижележащий слой, игнорируя остальные нижележащие. (В данном случае, под слоем VRayDiffuseFilter и так ничего нет, но этот прием будет необходим, если захотите проделать то же с каким-нибудь другим, верхним, слоем.)

Все, теперь можно изменять цвет выделения в панели Adjustments:

Untitled-10

Как уже упоминалось, смысл выключения различных галочек в 3ds max теперь должен стать вам ясен: единственное, для чего мы вернулись в 3ds max, так это для того, чтобы получить правильное выделение объекта для Photoshop’а.

Коррекция отдельных материалов

Точно так же, как мы научились изменять цвета объектов, можно изменять цвета отдельных материалов.

Ведь у одного объекта может быть множество материалов. Например, у колесика от тумбы три материала. Допустим, мы хотим изменить цвет голубого материала. Пипеткой подгружаем голубой материал в слот. И даем ему идентификатор, выбрав нужный номер в раскрывающейся кнопке (см. рисунок). Как видите, материалы тоже можно нумеровать, как и объекты. Это нужно для того, чтобы сказать VRay’ю, какой именно объект сохранять в отдельный канал.

Untitled-11

Ну и идем, собственно, в VRay, во вкладку Render Elements –> выбираем элемент MultiMatteElement и в его настройках зажигаем галочку MatID

Untitled-12

Этим мы обозначаем, что данный элемент, MultiMatteElement, должен иметь дело не с объектами, как в предыдущем параграфе, а с материалами. То есть цифры, введенные выше, будут означать не номера объектов, а номера материалов.

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

Кое-какие соображения

Сохранение выделения в Photoshop мы производили посредством красного канала (R gbufIDOn). Но, как вы могли заметить, в нашем распоряжении в настройках MultiMatteElement есть еще два канала – зеленый (G gbufIDOn) и синий (B gbufIDOn). Им также можно назначить, объект (или материал) под каким номером сохранять в отдельный канал. Получается, что можно одним экземпляром элемента MultiMatteElement сохранять выделения сразу трех объектов или материалов. Однако, элементов MultiMatteElement можно добавлять столько, сколько необходимо, назначая в каждый нужные вам номера объектов/материалов. Не забывайте только включать галочки напротив G gbufIDOn и т.д., чтобы активировать соответствующие каналы.

Еще один момент, который хочется отметить, это то, что элемент MultiMatteElement, конечно же, можно было включить и в самом первом рендере, вместе с остальными элементами. Но это целесообразно только тогда, когда вы точно знаете, какой объект может потребовать коррекции. Не будете же вы назначать каждому объекту и материалу в сцене свой ID на случай «а вдруг пригодится». Не забывайте, что каждый дополнительный рендер-элемент добавляет времени просчета, замедляя рендеринг. Поэтому разумным выглядит вариант, когда вы рендерите нужное выделение лишь при необходимости, выключив лишнее (можно также удалить остальные элементы).

Заключение

В данном уроке мы научились изменяли цвет объекта, пользуясь элементом VRayDiffuseFilter, но, проявив чуточку изобретательности, можно по тому же принципу, используя корректирующие слои с масками, изменять и другие элементы, на других слоях, таких как отражение (VRayReflection), бликовость (VRaySpecular)… При особо сложных наворотах со слоями не забывайте про такие полезные функции Photoshop как Layer Comps (Композиции слоев), смарт-объекты и объединение слоев в группы.

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

 

 

  • При замене цвета объекта в Фотошопе («в лоб» или через материал) не всё так радужно, как хотелось бы.

    Поскольку цвет объекта не есть изолированная сущность, то он влияет не только на вид самого этого объекта, но и на другие объекты сцены через отражения, преломления и глобальное освещение (это как минимум, может что и упустил).

    Если внимательно посмотреть на фрагмент картинки с подмененным цветом панелей шкафа (иллюстрация в тексте статьи), то можно заметить, что в размытом отражении на полу виден _оранжевый_ шкаф, а не синий. Думаю (на фрагменте не видно), что на стене рядом со шкафом можно обнаружить тёплый рефлекс от оранжевых панелей, а не холодный от синих.

    Так что я бы поостерегся так радикально менять цвета в Фотошопе. Изменения процентов на 10-15 по каждому из компонентов цвета, думаю, можно делать спокойно.

    PS. Заказчики, к сожалению, существа непредсказуемые. И пожелание сделать красный еще чуть более красным — самый лёгкий случай. Гораздо хуже, когда заказчик просит поменять на картинке мебель на мебель «вот из этого каталога».

    • cggeek:

      Действительно, в данном примере для правильности стоило бы еще поработать руками — перекрасить отражение в слое Reflection (инструментом Color Replacement tool, например). Все же скорее всего выйдет быстрее, чем ре-рендер. С глобалкой посложнее :). Но, как говорится, quick and dirty way (способ на скорую руку), о котором не помешает знать.
      Спасибо за конструктивный комментарий.

  • Ged:

    Замечательный сайт и ооочень наглядные/полезные уроки.
    Преогроменское спасибо!!!!!!

  • Fidan 121:

    Black Sphinx, postscriptum ubil 😀 )))))