Глава 10.2: UV развертка и Раскрашивание. Практика

Материал из Blender3D.

Перейти к: навигация, поиск

Автор Modron

Перевод PalSan

Содержание


UV-текстурирование (UV Mapping) каркаса во многом похоже на Разворачивание, разрезанной в нескольких местах, бумажной модели на плоском столе таким образом, что на её поверхность можно без труда наложить фотографии, либо рисунок. Затем развёрнутая бумага снова собирается в трёхмерное состояние. В Blender разрезание, разворачивание моделей и наложение текстур производится в окне UV Editor. Поскольку вы работаете с 3D графикой, наложив базовое изображение, вы можете делать и более интересные вещи, такие как разрисовка прямо в трёхмерном режиме и сохранение информации о текстурах для дальнейшего использования.

Вообще, есть много способов для создания развертки объектов, но стандартный способ Blender настолько хорош, что мы рассмотрим только его. В этом уроке вы развернёте “органическую” форму и наложите на неё простую текстуру.

Развертывание органических форм

Запустите Blender, если он ещё не запущен и начните новую сессию нажатием Ctrl-X. Когда откроется начальный экран, используйте СКМ, чтобы разделить 3D-вид на два отдельных окна (смотрите Главу 2, если не помните, как это сделать). Затем смените правый 3D-вид на окно UV/Image Editor, используя иконку Window Type в левой части заголовка.

Рисунок 00: Начальный экран, с разделением на 3D-вид и “ UV/Image Editor”.
Увеличить
Рисунок 00: Начальный экран, с разделением на 3D-вид и “ UV/Image Editor”.

В принципе, вы можете работать и с кубом, который уже есть у вас на экране, но это будет довольно скучно. Избавьтесь от него, выделив и нажав X. Вам нужно что-то более подходящее для Развертывания, поэтому войдите в передний вид и добавьте Сюзанну в сцену из меню Add->Mesh->Monkey панели инструментов (Сюзанна – имя обезьянки из стандартного набора моделей Blender). Если знаете как, то можете установить параметры гладкости (Set Smooth) и добавить модификатор иерархической поверхности (Subsurf, Shift-O). Как это сделать объясняется в “Моделирование каркаса”. Теперь обезьянка выглядит симпатичней.

Определение линий швов, или как будет разрезан каркас.

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

Фокус в том, чтобы разрезать поверхность в тех местах, где она образует “островки”, на которые нужно наложить текстуру, будучи развернутой на плоскости. Причём если эта область хорошо видна и должна быть покрыта высокодетализированной текстурой, либо гладким градиентом, то в этом месте не следует делать разрез. Вы должны делать разрезы, скрывая швы в недоступных взгляду местах, как если бы вы были пластическим хирургом.

Чтобы сделать разрез, выберите ребро и нажмите Ctrl-E. Из появившегося меню Edge Specials выберите Mark Seam. Любые ребра, помеченные таким образом, являются швами и будут выделены двойной толщиной и сменят цвет на тёмно-оранжевый. Ошибочно помеченные швы могут быть убраны опцией Clear Seam из этого же меню Ctrl-E.

На рисунках ниже изображены линии швов, которые мы выбрали для модели Сюзанны. Вы можете поместить линии швов также, либо по-своему. Мы всячески одобряем ваши эксперименты с размещением швов, так как они помогут понять, как производится Развертывание. Однако сейчас, постарайтесь хотя бы приблизительно повторить расположение швов на рисунке, чтобы легче было следовать за этим уроком. Выделяя швы, помните о режимах Edge Select и Edge Loop(Alt-ПКМ), которые могут быть довольно полезны.

Рисунок 01: [без текста]
Увеличить
Рисунок 01: [без текста]
Рисунок 02: [без текста]
Увеличить
Рисунок 02: [без текста]

Работа с поверхностями в UV Editor

Давайте укажем Blender развернуть Сюзанну на плоскости, используя помеченные линии разрезов, и отослать результат в окно UV Editor. Нажмите клавишу Tab чтобы перевести Сюзанну в Object mode. Теперь вы знаете ещё один режим, созданный специально для работы с поверхностями и UV unwrapping’а. Нажав клавишу F, вы увидите, что вошли в режим UV Face Select.

Примечание переводчика: в версии 2.46 и выше режим UV Face Select отсутствует, он объединен с режимом редактирования, и все действия необходимо выполнять в Edit Mode.

Рисунок 02.5: “Face mode” находится в меню режимов заголовка 3D и идентифицируется по пунктирным линиям вокруг выделенных поверхностей.
Увеличить
Рисунок 02.5: “Face mode” находится в меню режимов заголовка 3D и идентифицируется по пунктирным линиям вокруг выделенных поверхностей.

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

Примечание переводчика: в версии 2.46 и выше в окне UV Editor отображаются только те грани, которые выделены на модели.

В режиме Face также работает кнопка Tab, позволяющая входить и покидать режим редактирования. Любые выделения, сделанные в режиме редактирования, будут перенесены в режим Face, как только вы покинете его (в версии 2.46 и выше это не актуально - примечание переводчика). Выделив все поверхности, нажмите клавишу U (Unwrap). Появится меню с несколькими опциями. Выберите Unwrap. В окне UV Editor появится разрезанное и развернутое изображение Сюзанны. Одной из самых полезных команд, является Ctrl-L, которая позволяет выделить все поверхности из одной ноды.

Примечание : По техническим причинам “вертикали”, которые вы могли заметить в UV Editor по сути не являются вертикалями, поскольку находятся внутри каркаса. Тут они называются нодами.

Выделите ноду ПКМ в окне UV Editor и нажмите Ctrl-L. Это выделит весь “остров”, к которому принадлежит нода.

Вы можете двигать, вращать и изменять размер ноды используя клавиши G, S и R, как и в других случаях. Также вы можете совершать эти действия с помощью мыши.

Расставление “островов”

Для упрощения рисования, было бы неплохо поудобней расположить острова. Расположение островов на предыдущей иллюстрации потребует наложения текстур на нечетных углах. Это поможет перестроить их.

Рисунок 04: UV-острова перестроены и повернуты для работы с текстурами.
Увеличить
Рисунок 04: UV-острова перестроены и повернуты для работы с текстурами.

На этой иллюстрации есть пара примечательных моментов. Во-первых, взгляните, как изменился размер передней поверхности. Это – визуальный центр обезьянки, поэтому имеет смысл дать ему больше места, чтобы наложить более детализированную текстуру. Во-вторых, острова глаз были размещены друг над другом. Позже вы поймете почему. И, наконец, посмотрите, как нос отделен от остальной поверхности. В некоторых случаях можно оставить всё как есть, но если вы собираетесь накладывать текстуру лица одним рисунком, нужно прикрепить его.

На иллюстрации показан остров носа, но вам нужно научиться самостоятельно идентифицировать части развёрнутой модели, так как иногда это не так то просто сделать. В 3D виде выделите ПКМ одну из поверхностей носа. Вы увидите, что в окне UV Editor исчезли все UV-ноды кроме той, что вы выделили. Теперь, не отводя взгляда от окна UV Editor, но сохраняя окно 3D-вида активным, дважды нажмите клавишу A. Теперь все поверхности снова выделены, и все ноды снова появились в окне UV editor. Вы увидите, какая часть UV-нод вам нужна.

Выберите остров носа (наведите на него мышь и нажмите клавишу L) и нажмите клавишу G, чтобы переместить его в область отверстия в центре лица. Если нужно, используйте клавишу S, чтобы сделать размер носа чуть меньше самого отверстия. Выделите все ноды вокруг внешней границы острова носа и нажмите клавишу P. Выбранные ноды окрасятся в красный цвет. Это означает, что они стали Прикрепленными (Pinned). Прикрепленные ноды составляют базис функции Live Unwrap Transform(Трансформация развертывания на ходу), которую мы рассмотрим позже. В меню UVs заголовка выберите Live Unwrap Transform.

Рисунок 05: Остров носа помещен над отверстие на лице.
Увеличить
Рисунок 05: Остров носа помещен над отверстие на лице.

Теперь один за другим выберите прикрепленные ноды ПКМ и перетащите настолько близко к месту присоединения к лицу, насколько сможете.

Заметьте, что неприкрепленные ноды на острове носа следят за перемещением и самооптимизируются в реальном времени, чтобы сохранять пропорции. Ваша цель – сшить эти два острова так, чтобы соответствующие ноды были как можно ближе друг к другу. Вам, однако, не требуется быть предельно точными, т.к. в Blender имеется набор удобных средств, помогающих в этом.

Рисунок 06: Подходящая дистанция для сшивания.
Увеличить
Рисунок 06: Подходящая дистанция для сшивания.

Для использования инструмента сшивания, вам требуется выделить все ноды, которые должны быть сшиты: внешние ноды носового острова и внутреннее кольцо нод отверстия. Так как эти ноды имеют одни и те же вертикали в 3D-каркасе, можно воспользоваться специальным режимом, который позволит выделять соответственные ноды независимо от того, где они находятся на развернутой поверхности. В меню Select заголовка, выберите Stick UVs Mesh Vertex, или воспользуйтесь горячими клавишами Ctrl-C. Теперь, при выделении ноды с помощью ПКМ, соответствующая ей нода выделиться автоматически. Нажмите и удерживайте клавишу Shift, чтобы выделить всё кольцо нод таким образом. Активируйте команду сшивания Stitch нажатием клавиши V или выбрав её в заголовочном меню UV. Теперь оба острова соединены.

Рисунок 07: [без текста]
Увеличить
Рисунок 07: [без текста]

Чтобы лучше продемонстрировать действие инструмента Live Unwrap, давайте сделаем ещё кое-что перед тем, как начать рисовать. Выберите все UV-ноды в окне UV Editor нажатием клавиши A. Теперь, когда всё стало выделенным, сделайте все прикрепленные ноды обычными с помощью клавиш Alt-P. Все красные ноды должны снова стать обычными. Далее, из меню Select выберите Stick Local UVs to Mesh, что обратно тому, что вы делали до этого - для следующей части урока вам нужны только те ноды, которые вы сами выделите и никакие другие.

Сделав это, выделите ПКМ самую верхнюю ноду острова носа, затем, зажав Shift, выделите так же самую нижнюю и любую ноду на одной из сторон рта и нажмите клавишу P.

Рисунок 07.1: [без текста]
Увеличить
Рисунок 07.1: [без текста]

Убедитесь, что в меню UVs выбран режим Live Unwrap Transform. Выделите правой кнопкой верхнюю ноду острова лица и используя клавишу G начните двигать её. UV-поверхности меняют форму и положение чтобы максимально сохранить пропорции, но три прикреплённые ноды останутся на месте. Пометив эти ноды, мы указали процедуре UV-развертывания, чтобы она считала их новым базисом в своих расчетах. Если вы вручную переместите прикрепленную ноду, изображение будет заново рассчитано под новые позиции всех нод.

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

Когда вы закончите с этим, выключите режим Live Unwrap Transform в меню UVs. Выделите все ноды в окне UV Editor и нажмите Alt-P, чтобы сделать прикрепленные ноды стандартными.

Рисование и текстурирование в “UV Editor”

Теперь вы должны научиться работать с инструментами для рисования и наложения текстур. Вы неплохо потрудились, оптимизируя под свои нужды развернутое изображение Сюзанны, но для этой части вам потребуется файл UVUnwrap.blend из папки examples на прилагаемом CD. В нём содержатся требуемые текстуры и изображения. Однако, если вы из тех, кому нравится всё делать самому, делайте что хотите.

Изображения понадобятся нам позже, а сейчас создайте новое изображение в UV-Editor, выбрав пункт New из главного меню Image. В появившемся окне укажите имя изображения monkey paint и размеры 512x512 пикселей.

Рисунок 07.2: Окно создания нового изображения.
Увеличить
Рисунок 07.2: Окно создания нового изображения.

В окне 3D-вида зайдите в меню Draw и выберите режим Textured, если он ещё не выбран.

Рисунок 07.3: Выбор типа рисования.
Увеличить
Рисунок 07.3: Выбор типа рисования.

Цвет Сюзанны станет черным в окне 3D-вида, но это нормально, так как только что созданное вами изображение тоже черного цвета.

Чтобы активировать текстурное рисование в окне UV Editor, либо кликните на значок карандаша Pencil в заголовке окна, либо выберите Txture Painting из меню изображения. Затем нажмите клавишу C, чтобы вызвать палитру инструментов для рисования.

Рисунок 08: “UV Editor” в режиме текстурного рисования с палитрой инструментов для рисования.
Увеличить
Рисунок 08: “UV Editor” в режиме текстурного рисования с палитрой инструментов для рисования.

В палитре нажмите кнопку Clone и выберите текстуру monkyskin кнопками выбора внизу палитры. Вы увидите полупрозрачное изображение из файла monkeyskin, наложенное на оригинальное изображение. Зажав ПКМ, переместите текстуру поверхности позади острова лица. Теперь используйте ЛКМ, чтобы разрисовать лицевую область в окне UV Editor. По ходу рисования область, которую вы перетащили, будет становится светлее и отчетливее. Назначение кисти Clone – переносить изображение текстуры на изображение, загруженное в UV Editor. Чтобы увидеть результат нанесения текстуры без её отображения в фоне, вы можете нажать “X” возле имени изображения текстуры в палитре инструментов, либо переместить ползунок “B”(Blend) в положение 0. Этот ползунок отвечает за прозрачность текстуры.

В любом случае, продолжайте использовать ЛКМ для нанесения текстуры на изображение лица и ушей. Вам может потребоваться перемещать изображение текстуры с помощью ПКМ для того, чтобы задействовать различные его части. Не забывайте смотреть на изображение текстуры в окне 3D-вида. Если вам покажется недостаточно места в окне UV Editor, используйте клавиши Ctrl+Вверх/Вниз чтобы временно задействовать все части экрана. Когда закончите, должно получиться что-то на подобие этого:

Рисунок 09: Поверхность обезьяны покрыта текстурой во всех требуемых местах.
Увеличить
Рисунок 09: Поверхность обезьяны покрыта текстурой во всех требуемых местах.

Смените изображение текстуры на monkeyhair и нанесите его на оставшиеся области. Чтобы смягчить переход между этими двумя текстурами, сдвиньте значение ползунка Falloff в палитре инструментов. Значение ползунка, равное 0, даёт больше размытости, в то время, как значение 1 создает большую резкость.

Рисунок 10: Текстуры кожи и шерсти нанесены на поверхность.
Увеличить
Рисунок 10: Текстуры кожи и шерсти нанесены на поверхность.

Теперь задействуем нетекстурные элементы рисования. Нажмите кнопку Draw на палитре рисования и настройте все параметры так, как это изображено на рисунке ниже:

Рисунок 11: Настройка палитры для раскрашивания глаз.
Увеличить
Рисунок 11: Настройка палитры для раскрашивания глаз.

Из палитры выбора цвета выберите белый. Используя ЛКМ, нарисуйте белок одного из глаз. Затем последовательно выберите тёмно-синий, светло-синий и черный и нарисуйте радужню оболочу и зрачок.

Рисунок 12: Раскрашенные глаза.
Увеличить
Рисунок 12: Раскрашенные глаза.

Посмотрите в окно 3D-вида, и увидите, что оба глаза теперь раскрашены! Это потому, что поверхности глаз занимают одно и то же место в окне UV Editor и текстурируются одинаково. Установите значения Falloff в 0, Opacity в 0.1, Size в 20 и выберите коричневый цвет. Используйте эту кисть для создания небольшой тени вокруг глаз, носа и ушей.

Рисунок 13: Изображение тени в некоторых участках лица.
Увеличить
Рисунок 13: Изображение тени в некоторых участках лица.

Прокрутите модель в окне 3D-вида, чтобы со всех сторон рассмотреть раскрашенную поверхность.

Раскрашивание в окне 3D-вида

Использовать инструменты для рисования можно и в окне 3D-вида. В этом случае всё нарисованное будет передаваться в UV Editor. В окне 3D-вида смените режим объектов с UV Face Select на Texture Paint. Если кнопки Edit не доступны в окне, вызовите их клавишей F9. Найдите панель рисования.

Рисунок 14: 3D-вид в режиме текстурного рисования и кнопки редактирования с панелью рисования.
Увеличить
Рисунок 14: 3D-вид в режиме текстурного рисования и кнопки редактирования с панелью рисования.

Используя палитру выбора цвета на панели рисования кнопок редактирования, выберите глубокий красный оттенок. Раскрасьте рот обезьянки и смотрите, как изменится изображение в окне UV Editor.

Сохранение изображения текстуры

В окне UV Editor, выберите Save as из меню Image. Это вызовет стандартное окно менеджера файлов, где вы можете написать имя файла, в котором будет храниться только что созданное вами изображение. Если вы выйдете из Blender, не сохранив изображение, то оно будет потеряно. Теперь вы можете выйти из режима текстурного рисования в окне 3D-вида (сменив его обратно в Object mode) и в окне UV Editor(сняв отметку с пункта Texture Paint в меню изображения или нажав иконку карандаша в заголовке).

Добавление изображения в материал, используя UV-развертывание.

Обратитесь к главе 9, где вы найдете полное объяснение материалов и текстур. Сейчас мы покажем, как использовать нарисованные текстуры. При выделенной Сюзане, вызовите панель кнопок материала Material клавишей F5. Добавьте новый материал в панели Links and Pipeline кнопкой Add New, затем нажмите F6, чтобы вызвать панель Texture. Нажмите Add New и установите Texture Type в Image. Поскольку изображение уже загружено в Blender, вам не требуется снова искать его по файловой системе. Выберите изображение monkeypaint из выпадающего меню панели Image.

Вернитесь в панель Material, найдите вкладку Map Input и смените тип координат с Orco на UV. Этим вы укажете рендеру использовать UV-развертывание для текстурных координат.

На этом этапе положение камеры и света по умолчанию подойдёт для вашего первого рендера развернутой, покрытой текстурой модели.

Рисунок 15: финальный рендер с некоторыми изменениями положения камеры и освещения.
Увеличить
Рисунок 15: финальный рендер с некоторыми изменениями положения камеры и освещения.

Вот и она, наша восхитительная Сюзанна.

Личные инструменты