Относится к Blender 2.34
автор Claudio 'Malefico' Andaur
Когда имеешь дело со сложными моделями, например персонаж человека, животного, потребность в более мощных инструментах становится очевидной. В Blender версии 2.34, были добавлены несколько инструментов, такие как Seams (Швы) и развертывание меша методом LSCM (Least Squares Conformal Map, конформный маппинг методом наименьших квадратов).
В этом учебнике, я полностью разверну меш Сюзанны, чтобы показать вам как пользоваться этими новыми инструментами.
Меш можно организовать используя швы, которые дают отличную возможность создать "Группы граней", перед тем как развернуть меш. Эти "группы", просто название выбраных граней, а не разделение их, как например в Группе вершин (скелетная анимация). Для создания шва, необходимо переключится в режим редактирования, выбрать вершины по контуру граней и затем нажать CTRL-E или через меню Edge Menu->Mark Seam. После чего, на меше появится замкнутая (по умолчанию оранжевая) линия , которая и является швом. Для того, чтобы шов был виден не только в режиме редактирования, но и в режиме выбора граней (Face Select), включите кнопку Draw Seams, в окне кнопок редактирования.
После того как шов отмечен, в режиме выбора граней, можно выбирать каждую половинку модели по отдельности. Для этого в режиме выбора граней, выберите одну из граней и нажмите L, и все связанные с ней грани меша, в пределах шва, будут выбраны. Создавая швы для нашей модели, мы делим её на группы граней, с которыми мы и будем работать в дальнейшем.
В идеале, нам необходимо создать швы в тех местах, где нам нужно "разрезать" UV-карту. Например, для персонажа, необходимо отделить от его туловища руки и ноги.
Давайте реально что-то сделаем. Добавьте в сцену Suzanne (Сюзанна), и выберите центральный вертикальный контур вершин (убедитесь что выбрана вся цепочка вершин и нет пропущенных). Нажмите CTRL-E чтобы пометить этот контур как шов. Теперь давайте его испытаем. Войдите в режим выбора граней (Face Select), вы должны видеть шов. Выберите грань и нажмите L, все грани половинки меша, с этой стороны шва, должны быть выбраны. Если выбраны грани всего меша, значит присоздании шва, вы пропустили некоторые вершины в центральном контуре. Если это произошло, тогда вернитесь в режим редактирования и выберите недостающие вершины. Легко? В этом вся идея.
Создайте еще несколько швов, отделите друг от друга сложные участки, например, уши от головы. Когда мы всё это развернём, эти швы будут как разрезы на поверхности меша и UV-карте.
Добавьте шов, который отделит лицо Сюзанны от остальной части головы.
Откройте UV-редактор в ругом окне, рядом с 3D-окном. Теперь выберите модель и включите режим выбора граней.
Выберите грани с левой и правой стороны Сюзанныного черепа, исключая уши. Мы развернем эти группы, используя опцию Sphere, которая даст хорошее начало для дальнейшего разворачивания методом LSCM. Вероятно, вы получите что-то "почти" идеальное. Однако, я всегда получаю пару граней на неправильной стороне карты. Это можно легко исправить вручную, но я настолько ленивый, что ничего не буду делать. Нажмите C в UV-редакторе, чтобы войти в режим выбора граней (это самое интересное). Выберите несколько граней вокруг ушей, только те, которые выглядят радиально развернутыми. Выйдите из режима выбора граней (в UV-редакторе разумеется), и выберите вершины в верхней центральной зоне. Те что ниже выбрать немного тяжелее. Мы скоро ими займемся. Теперь, когда вершины выбраны, нажмите P. Это комманда Pin, (т.е. зафиксировать, "приколоть"). Это зафиксирует расположение выбранных вершин и ничто не повлияет на нашу форму. Более подробно об этом немного позже.
Теперь, когда мы зафиксировали и хорошо развернули вершины, снимите выбор со всех граней в 3D-окне, кроме двух граней на подбородке. В UV-редакторе, зафиксируйте центральные две вершины этих граней, которые были ранее плохо доступны. Почти готово.
Теперь настало время для волшебства LSCM. В 3D-окне выберите все грани связанные с гранями на подбородке, (используйте L, помните как?). Выбранные грани должны отобразится в UV-редакторе, как карта. Затем выберите все вершины в UV-редакторе и нажмите E. Blender выдаст запрос на LSCM. Подтвердите. И произойдет чудо. Внезапно, все "незафиксированные" грани переместятся в удобные места, а налегание граней друг на друга таинственно исчезнет. Cameron Diaz на телефоне...
Если вы выберите грани ушей, в 3D-окне, вы увидите что они по-прежнему на свом месте, сейчас можете о них не беспокоится.
Теперь нам нужно на карте сделать пространство для передней части лица. Это можно сделать с помощью выделения крайних вершин и масштабирования их, с включенным инструментом пропорционального редактирования. UV-редактор также может работать с инструментом пропорционального редактирования (клавиша O).
После того как необходимое пространство сделано, включите вид спереди и спроецируйте грани лица, используя опцию "From Window". Измените размер UV-граней по Y и X , так чтобы они поместились в пространстве которое мы сделали. Просто нажмите S, потом выберите клавишу Y или X изменяя ось масштабирования, все точно также как и при работе с мешем.
Теперь у нас есть хорошо развернутая, в UV-редакторе, передняя часть лица.
Если сейчас в 3D-окне, снять выбор со всех выбраных граней, то они не будут отображаться в UV-редакторе, но, вы можете включить опцию Draw Shadow Mesh в UV-редакторе (через меню View), чтобы увидеть не выбранные грани меша.
Теперь нам нужно объеденить эти два "островка". Если, выбирая вешины, вы будете удерживать CTRL то все совпадающие (парные) вершины буду тоже выбираться. Можно включить опцию Stick UVs to Mesh Vertex (через меню Select, в UV-редакторе), тогда удерживать CTRL не нужно. Выберите вершину скраю и вы увидите, что совпадающая (по мешу) вершина, на другом участке карты, будет также выбрана. "Сшейте" их вместе, нажатием V. Вершины объединятся в одну, в средней точке, относительно их оригинального расположения.
Это может показаться нудным, сшивать вершины одну за одной (попробуйте удерживать SHIFT). Выберите все вершины по краю лица Сюзанны."Сшейте" их. Зафиксируйте выбранные вершины. Помните, что фиксировать их нужно, если они не перекрывают друг друга. Если после сшивания, у вас будут перекрывающие друг друга грани, то продолжайте сшивать вершины и не фиксируйте сшитые.
Теперь у нас оба участка сшиты. Однако, есть зоны, где грани перекрываются (налегают друг на друга). Убедитесь, что зафиксированы только неперекрывающиеся вершины и примените несколько раз метод LSCM. Выберите все вершины и нажмите E. Если все хорошо, то с каждым разом, после применения LSCM, налегание граней будет исчезать. Сразу фиксируйте вершины, чтобы сохранить их расположеие.
Не стесняйтесь перед вычислением LSCM. двигать и масштабировать вершины, только обязательно, для сохранения симметрии, выбирайте парные вершины.
Сейчас мы используем тот же метод, описанный выше, чтобы убрать налегание граней для ушей Сюзанны. Будет лучше, если вы будете работать с каждой стороной отдельно.
Сначала, выберите вершины по краю, где ухо соединяется с головой. Как и в прошляй раз, выберите парные вершины и "сшейте" их. Каждый раз после шивания фиксируйте вершины. Теперь, зафиксируйте те вершины, которые являются ближайшими к сшитым и неперекрываются. Выберите ТОЛЬКО вершины уха, с которым мы работаем и примените LSCM.
Теперь, снова сшейте вершины по краю новосозданного участка. И опять, зафиксируйте их после сшивания. Зафиксируйте также следуюшие за ними, непрекрывающиеся вершины. Примение еще несколько раз LSCM. Таким образом, у нас получится ухо со всеми зафиксированными вершинами и без налегания граней.
Это можно сделать и вручную, выбирая вершины с нажатой CTRL, и затем перемещать их. Но это слишком долго и хлопотно. Тем более, что метод LSCM дает оптимальный вид карты, без растяжения текстуры.
Осталось еще совсем не много. Выберем группу граней, относящуюся к глазам Сюзанны и "развернём" их опцией "From Window" или LSCM. Так как меш глаз не связан с остальным мешем, то команда "Сшить" (Stitch) не сработает. Если вам нужно соеденить UV-карту глаз с остальной, то воспользуйтесь коммандой "Weld" (W), вместо "Stitch" (V). Однако, я предпочитаю оставить UV-карту глаз отдельно, так удобнее их раскрашивать.
Если у вашего персонажа есть веки, то лучше их развернуть в закрытом состоянии, чтобы потом было удобно их раскрасить.
После того как меш развернут полностью, мы можем экспортировать UV-грани в обычную картинку. Для этого, через меню UVs, выберите опцию Save UV Layout. После чего, в одном из окон, будет запущен скрипт (Python), который включен в Официальный Релиз Blender'а. Здесь вам нужно настроить размер картинки (помните, что UV-карта это квадратная картинка) и дать название. Затем скрипт сохранит карту как TGA картинку, которую вы потом сможете загрузить в Gimp, Photoshop или другую программу, как шаблон для создания текстуры.
Чтобы использовать эту UV-карту как шаблон, ваша 2D-программа, должна поддерживать прозрачность слоёв. Я выбрал Gimp (www.gimp.org; www.gimp.ru), так как я работаю в Linux'е, но вы можете выбрать что-то более вам подходящее.
Создайте новую картинку, с таким же размером как и UV-карта, и загрузите карту в слой. Добавьте еще несколько слоев, поверх UV-карты. Я создал три слоя, и назвал их COLOR, BUMP и SPEC-REF. Это сгенерирует три разные картинки, которые я буду использовать как разные текстуры (карты) для каналов Col, Nor и Ref/Spec в материале. Однако, вы можете использовать и одну карту для всего. Выгода от использования отдельных карт, в том, что вы можете настраивать рельефность материала, без затрагивания цветов.
Я выключил все слои, кроме, слоя с UV-картой (шаблон) и слоя с текстурой над которой я работаю. Вам нужно сделать чуть прозрачным рабочий слой, чтобы было видно UV-карту.
Цветная текстура ничего особенного не представляет. Используемые цвета, будут в точности отображены на модели. Текстуры SPEC-REF и BUMP немного замысловатые. Все белые места дадут "больше отражения", в первом случае(SPEC-REF), или "больше выпуклости" во втором случае (BUMP). Черные места, наоборот, будут смотретися темнее и не будут отражать.
Вы можете создать столько текстур, сколько в Blender'е текстурных каналов, учитывая Raytraced Mirroring (отражение трассировкой луча), Translucency (полупрозрачность), Emit (излучаемость), Specularity (отблеск), и т. д. Все эти текстуры будут использовать UV-проекцию, поэтому вам необходимо использовать опцию UV, на панели Map Input (кнопки материалов).
Для того чтобы использовать созданную нами текстуру(ы), нужно сначала создать материал и загрузить изображение текстуры. Позаботьтесь чтобы для каждой текстуры была включена опция UV, в каждом текстурном канале. Если для рельефности использовать цветную текстуру, то это будет смотрется немного странно. Если нужно, вы можете смешать цвет материала с цветом текстуры. Для этого, просто уменьшите слайдером значение Col, для этой текстуры.
Загружать текстуру в UV-редактор, нужно лишь в том случае, если вы хотите ее подстроить или подрисовать, с помощю соответствующего инструмента (texture painting tools). Так или иначе это не обязательно для рендеринга.
Итак, это все что касается UV-текстурирования. В данном примере я использовал два материала с одинаковыми настройками, для головы и для глаз. В материале для глаз, опцию Emit, я сделал чуть больше нуля, а в остальном параметры такие же ка и для головы.
Еще увидемся и продолжайте блендерить!