Home Backward Forward Comment Blog
Under construct

2 Создание поверхностей с разбиением

Данная глава содержит два раздела:

  • Перед созданием поверхности с разбиением
  • Создание поверхности с разбиением

Перед созданием поверхности с разбиением

Перед тем, как Вы создадите поверхность с разбиением, твердо запомните следующее.

Начинайте с простой базовой сетки

Наиболее эффективный путь моделирования поверхности с разбиением состоит в том, чтобы начать работу с грубой базовой сетки, состоящей из небольшого числа четырехугольников, а затем добавлять детали на уровнях 1 и 2 (и выше, если нужно). Чтобы создать базовую сетку, используйте полигональную поверхность и сохраняйте число ее полигонов небольшим. Если Вы начнете работу со сложной модели, сетка будет неоправданно сложной и производительность Вашей работы понизится.

Если Вы начинаете с уже существующей модели (например, конвертируете NURBS модель в полигональную поверхность), упростите ее так, как только это возможно перед созданием поверхности с разбиением.


Предупреждение

Поскольку пункт Reduce меню Polygons создает треугольные грани, использование его для упрощения модели перед созданием поверхности с разбиением не рекомендуется.


Начинайте с модели, содержащей главным образом четырехсторонние полигоны

Хотя Maya поддерживает работу поверхностей с разбиением при любом количестве сторон полигонов (до 256 сторон), Вы получите лучший результат, если сетка содержит только четырехсторонние.

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

Располагайте ребра и вершины исходной геометрии там, где предполагаете изменять геометрию объекта

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

Например, там, где предполагается создавать складки модели, весьма желательно наличие ребер. Ребра должны окружать глаза и рот персонажа.

Создание поверхности с разбиением

Вы можете создать поверхность с разбиением из полигональной или NURBS поверхности.

Можно также создать поверхность с разбиением, как результат одного из следующих средств работы с NURBS: Revolve (Вращение), Loft (Лофтинг), Extrude (Экструзия), Birail (Двурельсовые средства), Boundary (Ограничение), Square (Четырехугольник), Bevel (Скос) и Rebuild Surfaces (Перестройка поверхности).

Создание поверхности с разбиением из полигональной модели

Поскольку Maya создает поверхности с разбиением, используя модель Катмула-Кларка (который основан на четырехугольниках), полигоны будут разделяться на четырехугольники, с которыми проще работать.

Нельзя создать поверхность с разбиением из полигональной поверхности, которая:

  • имеет немножественную топологию;

Немножественная топология иллюстрируется следующими тремя примерами:

Для исправления немножественной топологии необходимо предпринимать специальные действия. Подробности см. в книге Использование Maya: Полигональное моделирование.

  • имеет слоистую топологию:

При слоистой топологии грани, расположенные друг над другом имеют более двух общих вершин или более одного ребра.

  • имеет свободные точки или плавающие ребра
  • имеет внутренние вершины с двумя совпадающими ребрами
  • не имеет согласованных нормалей

Чтобы создать поверхность с разбиением из полигональной поверхности:

1. Убедитесь, что полигональная поверхность не слишком плотная, а вершины и ребра расположены в соответствующих местах. Это может потребовать некоторой ручной настройки. Вы можете сделать это и после создания поверхности с разбиением, используя режим Polygon Proxy. Подробности см. ниже.

2. Выделите полигональную поверхность, которую собираетесь преобразовывать.

3. В меню Subdiv Surfaces выберите Create Subdiv. По умолчанию, выделенный объект преобразуется в поверхность с разбиением. Подробности о настройках пункта Create Subdiv см. ниже.

Создание поверхностей с разбиением из NURBS поверхностей

Есть два пути создания поверхности с разбиением из NURBS поверхности:

  • Создать поверхность с разбиением напрямую из NURBS поверхности.

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


Предупреждение

При конвертировании NURBS поверхностей с полюсами (например, примитив-сфера) получится поверхность, которая имеет пропадающие нормали в точках полюсов. При рендеринге такой поверхности Вы получите темное пятно в районе полюса. Чтобы избежать такого недоразумения старайтесь не конвертировать в поверхности с разбиением NURBS поверхности с полюсами.


или

  • Сначала конвертировать NURBS участки в полигональную модель, затем конвертировать то, что получится в поверхность с разбиением.

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

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

Чтобы создать поверхность с разбиением из NURBS поверхности:

1. Выделите NURBS поверхность, которую собрались конвертировать.

2. В меню Subdiv Surfaces выберите пункт Create Subdiv. По умолчанию, выбранный объект преобразуется в поверхность с разбиением. Подробности о настройках пункта Create Subdiv см. далее.

Чтобы создать поверхность с разбиением из NURBS кусков (через полигоны):

1. Выделите NURBS поверхность, которая должна быть конвертирована.

2. Конвертируйте NURBS куски в полигоны следующим образом:

  • В меню Polygons выберите значок настройки () NURBS to Polygons. Откроется соответствующее окно настройки.
  • Установите следующие опции, а затем нажмите кнопку Tessellate.

Опцию Type установите в Quads.

Опцию Tesselation Method установите в General.

Для U Type и V Type, выберите Per Surf # of Parms in 3D.

Для опций Number U и Number V, введите значения, обеспечивающие грубое приближение NURBS поверхности. Запомните, что с разбиваемой поверхность работать тем удобнее, чем проще базовая сетка.

3. Скомбинируйте полученные полигоны, чтобы создать единую полигональную поверхность (Для этого служит пункт Combine меню Polygons).

4. Слейте внутренние ребра (для этого используются пункты Merge Multiple Edges или Merge Edge Tool меню Edit Polygons, подробности см. в книге Использование Maya: полигональное моделирование).


Совет

Чтобы убедиться, что ребра в порядке, выделите полигональные поверхности, а в меню Display выберите значок настройки () пункта Custom Polygon Display, включите опцию Border Edges, затем нажмите кнопку Apply.


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

6. В меню Subdiv Surfaces выберите пункт Create Subdiv. По умолчанию, выделенный объект будет заменен поверхностью с разбиением. Подробности о настройках пункта Create Subdiv см. ниже.

Настройки Subdiv Create (Создание поверхности с разбиением)

В меню Subdiv Surfaces выберите значок настройки () пункта Create Subdiv, чтобы открыть окно настройки.

Maximum Base Mesh Faces (Максимальное число граней базовой сетки)

Устанавливает максимально возможное число граней поверхности, которая может быть успешно превращена в поверхность с разбиением. Например, если исходная поверхность имеет 900 граней, а значение Maximum Base Mesh Faces установлено в 1000, то конвертирование пройдет успешно. Если же исходная поверхность имеет 1200 граней, будет выдано сообщение об ошибке. В зависимости от сложности оригинального объекта, результирующая поверхность может быть представлена меньшим количеством граней.

Maximum Edges Per Vertex (Максимальное число ребер на вершину)

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

Keep Original (Сохранять оригинал)

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

Subdivision Surface Mode (Режим поверхности с разбиением)

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

Hierarchy Mode(no history) (Иерархический режим (без истории))

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

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

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

Proxy Object Mode (Режим замещающего объекта)

Данный режим применяется для работы с базовой сеткой (уровень 0) поверхности с разбиением. Для ее корректировки Вы можете использовать обычные средства работы с полигональными моделями. Например, можно экструдировать грани базовой сетки или удалять их.

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

Находясь в режиме замещающего объекта, можно редактировать текстурные координаты, напрямую изменяя их у полигонального объекта.


Предупреждение

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


Hosted by uCoz