Использование модификатора Cloth для симуляции поведения тканей
Владимир Верстак
В настоящем уроке хотелось бы рассказать о новом модификаторе Cloth (Ткани), вошедшем в 8 версию программы 3 ds Max . В отличие от одноименного оператора модуля reactor этот модификатор в первую очередь призван облегчить создание и анимацию одежды моделируемых персонажей. Это может стать темой отдельного упражнения, я же хочу показать как при помощи этого модификатора можно легко и просто создавать объекты, имитирующие поведение ткани. В настоящем уроке будет рассмотрено создание двух объектов: скатерти и развивающегося флага. Начнем с первого.
Для создания модели скатерти нам понадобится совсем простая сцена, состоящая из двух объектов: столешницы и скатерти. Для построения первого объекта воспользуйтесь параметрическим объектом Box (Параллелепипед), который можно построить, воспользовавшись командой главного меню Create>Standard Primitives>Box (Создать>Стандартные примитивы>Параллелепипед). В качестве второго объекта будет использован объект формы Rectangle (Прямоугольник), который так же как и параллелепипед необходимо построить в окне проекции Top (Сверху), воспользовавшись командой главного меню Create>Shapes>Rectangle (Создать>Формы>Прямоугольник). Расположение прямоугольника относительно объекта столешницы должно быть сверху и центрировано относительно осей X и Y (рис. 1).
рис. 1
ПРИМЕЧАНИЕ
Для создания ткани можно так же воспользоваться параметрическим объектом Plane (Плоскость) с достаточным количеством сегментов по длине и ширине (например, 50), но использование сплайнов позволяет получить дополнительные возможности, такие как создание объектов произвольной формы (скатерть с фигурными краями), внутренние швы и разрезы. Особенно это актуально при создании одежды.
Построенному объекту Rectangle (Прямоугольник) необходимо создать поверхность и первое, что приходит на ум - это конвертирование прямоугольника в полигональную поверхность, но этот способ заставит нас потерять те дополнительные возможности, к которым мы стремились, создавая объект формы. Лучшим выбором в данном случае будет являться использование модификатора Garment Maker (Моделирование одежды), пришедшего в восьмую версию вместе с модификатором Cloth (Ткани). Для присвоения этого модификатора в одном из окон проекций выделите прямоугольник и выполните из главного меню команду Modifiers>Cloth>Garment Maker (Модификаторы>Ткани>Моделирование одежды). Прежде чем перейти к настройке параметров модификатора обратите внимание на то, что два из четырех углов получили нежелательное закругление, избавится от которого можно воспользовавшись разбиением вершин этих углов для создания самостоятельных сплайнов на уровне подобъектов формы. В связи с этим необходимо в стеке модификаторов перейти на нижний уровень (иначе говоря выделить в стеке строку с именем Rectangle (Прямоугольник)) и добавить следующим модификатор редактирования сплайнов, для чего необходимо во вкладке Modify (Изменить) командной панели щелкнуть на раскрывающемся списке Modifier List (Список модификаторов) и выбрать из списка модификатор Edit Spline (Редактирование сплайна) (рис. 2).
рис. 2
Для редактирования прямоугольника перейдите на уровень подобъектов Vertex (Вершина), для чего щелкните на одноименной кнопке в свитке Selection (Выделение) или воспользуйтесь клавишей быстрого доступа 1. Выделите все четыре вершины прямоугольника и перейдя к свитку Geometry (Геометрия) и щелкните на кнопке Break (Разбить). После этого выйдите из режима редактирования вершин, повторно щелкнув на кнопке Vertex (Вершина) и вернитесь к модификатору Garment Maker (Моделирование одежды).
Для продолжения работы необходимо обновить созданную модификатором поверхность и увеличить ее топологию. Для этого выполните два следующих действия:
- В свитке Main Parameters (Основные параметры) щелкните на кнопке Mesh It (Рассчитать сетку).
- Увеличьте значение счетчика Density (Плотность) от 1 до 2 .
ВНИМАНИЕ
Увеличение количества треугольников, образующих поверхность объекта позволит создать более естественное поведение ткани, но вместе с тем на компьютерах с низкой производительностью способно вызвать зависания и длительные расчеты динамики ткани. В связи с этим я рекомендовал бы на таких компьютерах не превышать значение параметра Density (Плотность) больше 1.
В результате выполненных выше действий все углы станут ровными, а плотность сетки повысится, что позволит получить сглаженные складки поверхности ткани. На рисунке 3а показан фрагмент прямоугольника с модификатором Garment Maker (Моделирование одежды) до редактирования и после (рис. 3б).
рис. 3
Продолжим моделирование и добавим к прямоугольнику модификатор Cloth (Ткани), для чего необходимо в одном из окон проекций выделить прямоугольник и выполнить из главного меню команду Modifiers>Cloth>Cloth(Модификаторы>Ткани>Ткань). Для настройки поведения ткани выполните следующие действия:
- В свитке Object (Объект) модификатора Cloth (Ткани) щелкните на кнопке Object Properties (Свойства объекта), в результате чего откроется одноименное окно диалога.
- В окне диалога Object Properties (Свойства объекта), в левой его части, выберите из списка доступных объектов прямоугольник (объект с именем Rectangle 01) и установите переключатель на Cloth (Ткань).
- Выберите в группе Cloth Properties (Свойства ткани ) из раскрывающегося списка Presets (Предустановки) строку с именем Default (Исходный) (рис. 4) и щелкните на кнопке Ok .
рис. 4
- Для подключения к расчетам поверхности стола (в моем случае это построенный ранее параллелепипед) щелкните на кнопке Add Objects (Добавить объекты) и в появившемся окне диалога Add Objects To Cloth Simulation (Добавить объекты к расчетам динамики ткани) выберите объект Box 01.
- Для объекта Box 01 установите переключатель на Collision Object (Объект столкновения) и оставьте значения, принятые по умолчанию (рис. 5).
рис. 5
- Щелкните на кнопке Ok для закрытия окна диалога.
На этом все готово к расчетам динамики ткани. Чтобы запустить эти расчеты необходимо в группе Simulation (Моделирование) свитка Object (Объект) щелкнуть на кнопке Simulate (Моделирование) или на кнопке Simulate Local (Локальное моделирование) - если не планируете создавать анимацию поведения ткани во времени.
ПРИМЕЧАНИЕ
После запуска расчетов динамики вы можете в любое время остановить их и выполнить дополнительную настройку свойств объектов, вплоть до изменения плотности сетки модификатора Garment Maker (Моделирование одежды). В этом случае необходимо вернуть ползунок таймера анимации в первый кадр (если вы не использовали локальные расчеты динамики) и щелкнуть на кнопке Erase Simulation (Очистить моделирование) из свитка Object (Объект).
На рисунке 6 показан результат выполненного расчета динамики ткани имитирующий скатерть, рассмотренный в настоящем упражнении.
рис. 6
Давайте рассмотрим еще один вариант использования модификатора Cloth (Ткань), на сей раз для моделирования развивающегося флага и в этом нам поможет замечательная особенность этого модификатора, позволяющая взаимодействовать со стандартными объектами Force (Сила).
Как всегда начнем с построения объектов. Для имитации флага нам понадобится два объекта: Plane (Плоскость), имитирующая полотно флага и ветер ( Vind ), который будет удерживать флаг в горизонтальном положении (по умолчанию на объекты, использующие модификатор Cloth (Ткань) действует сила тяжести).
Для построения плоскости перейдите к окну проекции Front (Спереди) и выполните из главного меню команду Create>Standard Primitives>Plane (Создать>Стандартные примитивы>Плоскость). В свитке Parameters (Параметры) построенного объекта установите желаемые размеры флага и увеличьте значения счетчиков Length Segs. (Сегментов по длине) и Width Segs (Сегментов по ширине) до 20-25 . Это позволит получить более естественную деформацию ткани.
Для построения объекта, имитирующего ветер необходимо выполнить из главного меню команду Create>SpaceWarps>Forces>Wind (Создать>Пространственные деформации>Силы>Ветер) и в окне проекции Top (Сверху) построить значок ветра, развернув его по направлению к флагу (рис. 7).
рис. 7
Пришло время назначить плоскости модификатор ткани. Для этого в одном из окон проекций выделите плоскость и выполните из главного меню команду Modifiers>Cloth>Cloth (Модификаторы>Ткани >Ткань). Для того, чтобы настроить присвоенный плоскости модификатор выполните следующие действия:
- Перейдите на уровень редактирования подобъектов модификатора Cloth (Ткани), для чего щелкните на знаке «+» расположенном слева от имени модификатора и выделите строку Group (Группа).
- Выделите верхнюю и нижнюю боковые вершины и щелкните на кнопке свитка Group (Группа) с именем Make Group (Создать группу), в результате чего откроется диалоговое окно с одноименным названием, в котором необходимо указать имя группы. Таким образом, мы создадим группу из двух точек, которые будут крепиться к древку флага и не будут участвовать в расчетах динамики.
- После создания группы щелкните на кнопке Drag (Помеха), расположенной в свитке Group (Группа). При этом созданная группа должна быть активной (рис. 8).
рис. 8
- Выйдите из уровня редактирования подобъектов, для чего щелкните в стеке на имени модификатора Cloth (Ткани).
- В свитке Object (Объект) щелкните на кнопке Cloth Forces (Силы воздействующие на ткань), в результате чего откроется окно диалога Forces (Силы).
- В левой части окна диалога Forces (Силы) щелкните на строке с именем Wind 01 и переместите его в окно Forces in Simulation (Симуляция сил), для чего щелкните на кнопке со стрелкой, направленной вправо.
- Вернитесь к свитку Object (Объект) и щелкните на кнопке Object Properties (Свойства объекта), в результате чего откроется одноименное окно диалога.
- В левой части открывшегося окна выделите строку с именем Plane 01 и установите переключатель в Cloth (Ткань).
- Из выпадающего списка группы Cloth Properties (Свойства ткани) выберите строку Silk (Шелк). Таким образом объекту Plane (Плоскость) будут присвоены свойства шелковой ткани (рис. 9).
рис. 9
- Подтвердите выполненные изменения и закройте окно диалога для чего щелкните на кнопке Ok.
Все предварительные настройки выполнены, осталось только увеличить силу ветра и запустить выполнение расчетов динамики ткани. Для того, чтобы сделать первое, в одном из окон проекций выделите значок ветра и в свитке Parameters (Параметры) увеличьте значение счетчика Strength (Мощность) до 5 . Для того, чтобы запустить расчет динамики, вернитесь к модификатору Cloth (Ткани) и в свитке Object (Объект) щелкните на кнопке Simulation (Моделирование).
Ниже, на рисунке 10 представлен флаг, полученный при помощи модификатора Cloth (Ткани).
рис. 10
Подводя итоги настоящего упражнения можно сказать, что мы рассмотрели только малую часть того, что можно делать, используя модификатор Cloth (Ткани). Кроме того симуляция реального поведения ткани требует более детальных настроек со значительным количеством экспериментов. В качестве самостоятельного задания вы можете попробовать выполнить расчеты с другими видами ткани и даже составить и сохранить свои собственные настройки для последующего их применения.
|