Уроки Maya Maya Текстурирование

Поиск по тегам : Уроки, Maya Текстурирование, Текстурирование Mini-Cooperа, Maya


Развертывание текстурной сетки в Maya 7 (Unfold UV)
02.11.2007 г.

Рейтинг 1.0/5 (6 голосов)

Вы можете получить доступ к Unfold UVs, выбрав в меню Polygon UVs пункт Unfold UVs (находясь в наборе меню Modeling) или непосредственно из окна UV Texture Editor - меню Polygons пункт Unfold UVs

 

Развертывание текстурной сетки в Maya 7 (Unfold UV) Развертывание текстурной сетки в Maya 7 (Unfold UV)

  Полигональная модель в видовом окне     Развертка сетки UV координат

 

Unfold UVs неплохо справляется с задачей в ситуациях, когда сетка UV координат создается для полигональной модели сложной формы (например органического происхождения). Обычно в таких случаях другие методы проекции не работают, а автоматическое наложение (automatic mapping) порождает слишком много отдельных частей, которые требуют очень много операций перемещения и сшивания. Например, полигональные модели человеческой головы, двуногого или четвероногого персонажа являются прямыми кандидатами на использование Unfold UVs.


Unfold UVs продуцирует лучшую сетку UV или большие области UV по сравнению с Automatic Mapping, поскольку стремится сохранить соседние грани вместе.


Unfold UVs не требуется при работе с сетками простой формы, с которыми хорошо справляются другие способы проекции. Например, к модели стены применятся плоская (planar) проекция, к модели бутылки - цилиндрическая и т.д.


Перед использованием Unfold UVs Вам надо убедиться, что сетка полигональной модели удовлетворяет некоторым условиям:

 

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

 

  • Сетка UV должна быть разрезана так, чтобы позволить средству Unfold UVs свободно развернуть сетку UV. Полигональная сетка должна иметь возможность развертывания на плоскость без перекрытий, подобно тому, как раскроенная ткань раскладывается на столе перед тем, как из нее сошьют одежду. Чтобы получить качественную развертку модели, выбор ребер, по которым будет происходить разрезание, требует некоторого планирования. Чем лучше выбраны ребра для разреза, тем лучше согласованность между исходной полигональной сеткой и полученной разверткой UV координат. Кроме того, добиться согласованности текстуры вдоль ребра разреза очень трудно, поэтому обычно разрез выбирают в наименее видном месте модели. Например, можно разрезать сетку под руками или сзади ног персонажа.

Обычно для достижения хорошего результата требуется несколько итераций Unfold UVs. Часто требуется уточнить ребра разрезаний, добавить новые, выровнять UV координаты, переместить и сшить UV координаты между итерациями. Вы можете также закреплять области сетки UV в окне UV Texture Editor и затем уточнять небольшие порции развернутой сетки следующими итерациями. После того, как Вы получите приемлемый результат, можно использовать пункт Layout UVs меню Polygons в качестве завершающего шага, чтобы убедиться, что UV координаты расположены так, как надо.


Подробнее об опциях средства Unfold UVs см. ниже.


Как развернуть сетку UV координат полигональной модели, используя Unfold UVs
 
  • Убедитесь, что полигональная модель, с которой Вы хотите работать, имеет UV координаты, полученные в результате применения любой операции наложения текстуры (например, пункта Cylindrical Mapping меню Polygon UVs).

Предупреждение:
Форма сетки UV координат не критична, так как Unfold UVs будет ее модифицировать.

  • В видовом окне определите расположение ребер, по которым будете разрезать оболочку для развертки, используя трехмерный объект, как референс. Чаще поворачивайте и увеличивайте вид модели.


Дополнительные подробности см. ниже.


Совет:
При редактировании UV координат можно использовать перспективное видовое окно и UV Texture Editor для выделения полигонов, вершин, ребер и точек UV. Чтобы облегчить себе эту задачу, нажмите правую кнопку мыши на любом расположении окон панели Toolbox и выберите в появившемся меню пункт Persp/UV Texture Editor.

  • В видовом окне Вы можете выбрать ребра, составляющие непрерывную линию. Выделите одно из ребер, а затем нажмите правую кнопку мыши, удерживая клавишу Ctrl. В появившемся меню выберите пункт Select Contiguous Edges.
  • Используя видовое окно и UV Texture Editor, выделяйте и разрезайте намеченные ранее ребра на сетке UV. Для этого предназначен пункт Cut UVs меню Polygons в окне UV Texture Editor.
  • В окне UV Texture Editor, выполните начальную развертку полигональной сетки. Для этого выделите сетку UV, а затем выберите пункт Unfold UVs в меню Polygons.
  • Чтобы остановить операцию Unfold UVs, нажмите клавишу Esc.

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

Следующие советы помогут Вам добиться правильной развертки.

 

Советы по работе с Unfold UVs

 

Одна или много сеток


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


Определение расположения линий разреза


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

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

Средство Edge Loop Tool может быть использовано для быстрой вставки ребер в сетку там, где они не видны наблюдателю.


Наборы быстрого выделения (Quick Select sets)


Если Вам надо повторно выделить сложный набор ребер, вершин или координат UV, Вы можете записать соответствующие компоненты в набор (Quick Select set), который можете после этого оперативно выделять. Чтобы создать Quick Select set, выделите нужные Вам компоненты и в меню Create выберите пункт Sets и далее Quick Select Set. Обычно этот прием используется в случае необходимости многократного выделения UV координат для их закрепления во время развертки.


Подсветка границ текстуры


Как в видовом окне, так и в UV Texture Editor важно видеть границы текстурной сетки. Для этого надо включить опцию Highlight Texture Borders. Выберите значок настройки пункта Custom Polygon Display меню Display. В результате границы сетки UV будут отображаться более толстыми линиями, что поможет Вам правильно разрезать текстуру для развертки.


Закрепление (Pinning)


В зависимости от того, где Вы выбрали ребра для начального разрезания сетки UV координат, можно закрепить указанное положение координат или область сетки так, чтобы средство Unfold UVs использовало их как временные опорные точки. Например, если Ваша модель изображает четвероногое животное, Вы можете выбрать вершины вдоль спины, начиная от кончика носа до кончика хвоста (если персонаж не разделен пополам) и выровнять эти вершины вдоль осей U и V в окне UV Texture Editor. Когда Вы будете выполнять следующую итерацию Unfold UVs, включите опцию Pin Selected с тем, чтобы выделенные UV координаты оставались на месте во время выполнения развертки. Координаты UV будут размещены так, чтобы не создавать перекрытий с закрепленными вершинами. Часто совместно с закреплением используют создание наборов быстрого выделения (см. выше).

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

Другими словами, Вы можете получить лучшие результаты, закрепляя критические точки UV координат с учетом симметричности объекта.


Выравнивание UV координат


Используйте Align UVs, чтобы привязать UV координаты к вертикальной или горизонтальной оси текстурного пространства. Выравнивание UV координат на ребрах, идущих по оси симметрии модели, может существенно облегчить текстурирование. Например, это может быть линия идущая вдоль спины четвероногого персонажа. Вы можете выделить и выровнять эти UV координаты и закрепить их так, чтобы они были ориентиром для прочих.


Средство UV Lattice Deformer Tool


Средство UV Lattice Deformer Tool в окне UV Texture Editor может использоваться для модификации части сетки UV координат перед использованием следующей итерации развертки.

 

Опции Unfold UV

Ниже описаны настройки, которые Вы можете видеть в окне Unfold UVs Options

 

Развертывание текстурной сетки в Maya 7 (Unfold UV)

 

Solver Weighting (Вес вычислителя)


Значение определяет весовой коэффициент между двумя типами вычислений: локальным и глобальным. Когда Solver Weighting установлен в 0 (по умолчанию) для развертки используются только локальные вычисления. Когда Solver Weighting установлен в 1 (по умолчанию) для развертки используются только глобальные вычисления. Если значение Solver Weighting находится в промежутке между 0 и 1, результат развертки комбинируется из результатов обеих вычислений. Значение 0 рекомендуется для большинства операций развертки и дает наиболее быстрый результат.

Конфигурация некоторых полигональных моделей может привести к тому, что Unfold UVs даст неожиданный эффект сужения при вычислении развертки. Например, форма бедра, сужающаяся к колену персонажа, может привести к непропорциональному сужению развертки модели, если при развертке использовать только локальные вычисления. В этом случае результат может быть исправлен применением дополнительной операцией развертки со значением Solver Weighting большим нуля, что приводит к учету результатов глобальных вычислений. Операция развертки в этом случае может занять существенно большее время, но эффект сужения значительно уменьшится. После получения нужного масштаба текстуры можно закрепить точки, в которых ранее наблюдались искажения, чтобы они не вернулись обратно. Закрепив проблемные точки, Вы можете снова выполнять операцию развертки, установив Solver Weighting в 0.

Пример использования Solver Weighting приведен ниже.


Face Area/Edge Length (Площадь грани/Длина ребра)


Указывает, какой метод сравнения полигонов используется при развертке. Эта установка доступна, только если опция Solver Weighting установлена в значение, большее нуля и используется для смешивания двух методов сравнения.

Face Area (Площадь грани) сравнивает полигоны путем сравнения площадей грани сетки UV координат и исходной полигональной сетки.
Edge Length (Длина ребра) использует метод сравнения полигонов по их периметрам.

Когда значение Face Area/Edge Length равно 0.5 (по умолчанию) оба метода вносят одинаковый вклад в окончательный результат. Обычно это хорошее начальное значение для большинства случаев.
Полигональная сетка, имеющая большие области кривизны будет развернута лучше, если значение будет смещено ближе к Face Area, что уменьшит искажения текстурной карты на искривленных областях. Однако если сдвинуть значение полностью к Face Area, при развертке могут получиться другие искажения.


Pin UV Border (Закрепление границ UV)


Сохраняет положение UV координат, находящихся на границе сетки UV координат. Данная опция применяется, если развертка граничных точек Вас устраивает.


Pin Selected (Закрепление выделенного)


Сохраняет положение только выделенных точек UV координат. По умолчанию Unfold UVs во время расчета развертки перемещает все выделенные UV координаты, а не выделенные остаются на месте. Данная опция позволяет изменить порядок наоборот. Обычно такой прием применяется, если текущее положение части текстурных координат Вас уже устраивает, и Вы не хотите перемещать их при дальнейшей развертке.


Max Iterations (Максимальное количество итераций)


Указывает максимальное число повторяющихся вычислений алгоритма развертки в случае, если значение Stopping Threshold не достигается. Если величина Stopping Threshold не достигается в процессе вычислений, то через указанное количество итераций процесс развертки останавливается.

Вы можете остановить процесс развертки в любой момент, нажав клавишу Esc.

Если расчеты прерваны досрочно, это значит, что значение Stopping Threshold не достигнуто. Значение по умолчанию 5000. Установка Max Iterations в значение большее, чем 5000 приведет к более качественной развертке, но может увеличить время расчетов.

Если значение Solver Weighting больше нуля, Вы можете для начала установить Max Iterations в небольшое значение, например 50.


Stopping Threshold (Порог остановки)


Указывает порог для остановки процесса развертки. Данное значение базируется на вычисляемом при развертке процентном отношении, полученном при сравнении углов, расстояний и площадей исходной полигональной сетки и результатом развертки. Расчет развертки будет продолжаться пока или не будет достигнуто заданное значение, или не будет превышено максимальное число итераций Max Iterations(см. выше). Установка значения меньше чем 0.001 может привести к существенному увеличению времени расчета. Если время не имеет значение, Вы можете установить значение Stopping Threshold равным 0, что позволит средству Unfold UVs получить оптимальную развертку.


Rescale (Перемасштабирование)


Изменяет масштаб окончательной сетки UV полученной при развертке на значение, указанное в опции Scale Factor. Начальное значение площади сетки определяется исходя из общей площади полигональной сетки в геометрическом пространстве (XYZ), путем сравнения ее с площадью развертки модели в пространстве текстурных координат UV. Обычно эта опция используется при развертке модели, разделенной на несколько частей, чтобы обеспечить их одинаковый масштаб.


Scale Factor (Масштабный множитель)


Значение, которое указывает величину перемасштабирования. Величина Scale Factor большая единицы увеличивает, а меньшая единицы - уменьшает полученную в результате развертки UV сетку. Например, если полигональная сетка имеет в видовом окне размер 1, а Scale Factor равно 0.02, то соответствующая развертка будет иметь размер 0.02 в окне UV Texture Editor.


Keep History (Сохранять историю)


Когда Keep History включена, Unfold UVs будет автоматически пересчитывать UV координаты при изменении сетки полигональной модели. Это позволяет избежать ситуации, в которой текстура искажается при деформации модели. Включение опции Turning Keep History может привести к длительным вычислениям, когда полигональный объект анимируется, поэтому включайте ее только в случае необходимости. Значение по умолчанию - выключена.

 

Пример использования Solver Weighting


Следующий пример демонстрирует, как изменение Solver Weighting совместно с закреплением и выравниванием UV координат помогает управлять разверткой и наложением текстуры.

  • Рассмотрим бочкообразный полигональный объект с шахматной текстурой. Использовав Unfold UVs, выполним начальную развертку с опцией Solver Weighting, установленной в 0 (по умолчанию). Форма развертки получится трапециевидной, а наложенная на объект карта исказится.
Развертывание текстурной сетки в Maya 7 (Unfold UV)
Результат работы Unfold UVs при Solver Weighting = 0 для бочкообразной фигуры. Обратите внимание на трапециевидность развертки.

  • Вторая операция развертки выполнялась со значением Solver Weighting равным 0.6. Эта развертка выглядит более правильно - трапециевидность существенно убавилась. Однако в левом нижнем углу развертки наблюдается перекрытие текстурных координат, что опять-таки приводит к искажению текстуры на объекте.
Развертывание текстурной сетки в Maya 7 (Unfold UV)
Результат работы Unfold UVs при Solver Weighting = 0.6. Трапециевидность выправилась, но перекрытие UV координат искажает текстуру.

  • Откорректировав и закрепив углы UV сетки, выполним следующую итерацию развертки, установив Solver Weighting в значение 0. Сетка станет более равномерной, а перекрытие UV координат будет устранено.
Развертывание текстурной сетки в Maya 7 (Unfold UV)
 
Результат работы Unfold UVs при Solver Weighting = 0. Углы UV сетки были перемещены и закреплены.

  • Верхний и нижний ряды UV координат были выровнены, после чего запущена последняя итерация развертки со значением Solver Weighting, равным 0. В результате получена приемлемая развертка.
Развертывание текстурной сетки в Maya 7 (Unfold UV)
 
Результат работы Unfold UVs при Solver Weighting = 0. Верхние и нижние ряды сетки были выровнены и закреплены. 
 
Источник: www.3dcenter.ru
Перевод: Алексеев В.(heshang)
Error, missing fireboard config file!
Related items

Комментарии (0)Add Comment

Написать комментарий
quote
bold
italicize
underline
strike
url
image
quote
quote
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley
Smiley

security code
Напишите отображаемые буквы


busy
 
« Пред.   След. »