Cloth Modifier


Select an object.  Modify panel  Modifier List  Object-Space Modifiers  Cloth
   
      Модификатор Cloth это сердце системы моделирования Cloth, и применяется ко всем объектам, которые должны быть частью Cloth–симуляции. В нём определяются Cloth–объекты и объекты столкновения (collisionобъекты), назначаются их свойства, и реализуется имитационное моделирование., иными словами Симуляция. Другие элементы управления включают в себя создание ограничивающих условий, интерактивное перетаскивание ткани, удаление частей симуляции.


 Слева: модификатор Cloth ещё не применён.
Справа: Модификатор применён и симуляция просчитана

Основные понятия
В Cloth–симуляции Вы определяете для движка Cloth, какие объекты будут частью симуляции, а какие нет. После этого можно определить для всех объектов материал. Можно указать, какими свойствами будет обладать Cloth–объект, а также определить свойства для Collisionобъекта.
Поскольку Cloth это модификатор, его копия назначается на каждый объект, который должен быть включён в Cloth–симуляцию. Это относится ко всем Cloth–объектам и объектам столкновения. Имейте ввиду, что два объекта с двумя отдельно применёнными модификаторами Cloth, не будут взаимодействовать друг с другом. Существует несколько способов для включения объектов в симуляцию:
1)                  Выбрать все объекты в сцене и применить к ним модификатор Cloth.
            2)                  Применить к одному, или нескольким объектам модификатор Cloth, а затем добавbnm объекты используя кнопку «Add Objects», которая доступна как на разворачивающейся панели, так и из диалогового окна «Object Properties».

Единицы измерения
Важно: Следующая информация необходима только в том случае, если после применения модификатора Cloth Вы измените системные единицы. Если же Вы их измените до применения Cloth, то модификатор сам в автоматическом режиме скорректирует их.

Моделируя одежду, важно учитывать её размер.
Большой флаг ведёт себя иначе, чем носовой платок. Если масштабирование отключено, тогда и симуляция тоже будет отключена. Потому что Cloth имеет дело с реальной физикой, и работает с реальными единицами. Это означает, что модификатор Cloth  должен знать соотношение м/у системными единицами 3ds Max_а и своими собственными. Например, Вы создали плоскость 10*10 в единицах 3ds Max_а. Если вы захотите, чтобы эта плоскость вела себя как платок 10*10 дюймов, то Вы должны сказать Cloth_у, что 1 единица 3ds Max равна 1 дюйму. Если Вам нужно чтобы платок вёл себя как 10*10 футовая простыня, то Вы должны сказать Cloth_у, что 1 единица 3ds Max равна 1 футу. За исключением замечания отмеченного в начале раздела.
 Cloth игнорирует установленные системные единицы 3ds Max (Меню CustomizeUnits SetupSystem Units Setup). Он имеет свои собственные настройки единиц измерения, которые определяются параметром «cm/unit» в раскрывающемся свитке «Simulation Parameters». Этот параметр говорит модификатору Cloth о том, скольким сантиметрам соответствует каждая единица 3ds Max1 дюйм = 2,54 см.,  поэтому значение по умолчанию =2,54 означает, что одна 1 единица 3ds Max соответствует 1 дюйму.
Ниже приводится порядок действий для определения того, какие настройки нужно использовать.
Используйте утилиту Measure (измерения) или Tape (рулетка) из раздела «Helpers» для измерения некоторых параметров ткани в единицах 3ds Max (назовём это числом «Х»).
Определитесь, насколько большим этот объект должен быть в реальности, преобразуйте это число в сантиметры. Если у Вас есть размер в дюймах, тогда просто умножьте это число на 2,54 (назовём это числом «Y»).
cm/unit=y/x
Вот небольшой пример: Вы импортировали файл  «man.obj» и хотите одеть на него рубашку.
Используя утилиту Measure, Вы обнаруживаете, что рост человека составляет 170 единиц - в единицах измерения 3ds Max.
Таким образом, Вы определяете, что его рост составляет около 6 футов.
6 футов = 72 дюйма.
А 72 дюйма = 72 * 2,54 = 182.88 cм. Таким образом «Х» составляет 182.88 cм.
Теперь У вас есть значение, благодаря которому Вы можете убедиться в том, что рубашка ведёт себя правильно.

Cm/unit=y/x=170/182.88=0.929.

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

Симуляция 
После того как все параметры заданы и Вы готовы продолжать, пришло время начать симуляцию. Во многих случаях сначала выполняется локальная симуляция, это необходимо для того, чтобы подогнать ткань под персонажа. После того как ткань стала на место (сомкнулась), можно производить симуляцию с учётом времени. Управление симуляцией в  модификаторе Cloth очень гибкое. Можно вносить много изменений и редактирований прямо в процессе работы симулятора, делая его более предсказуемым,  чем просто кликнуть на кнопку запуска симуляции и «Рассчитывать на благоприятный исход» сценария.

Ограничивающие Связи
Для создания во время симуляции различных эффектов ткани, поведение ткани можно ограничивать, причём делать это можно разными способами. Модификатор Cloth может тормозить ткань, имея дополнительное сопротивление имитирующее полёт по воздуху, или может воздействовать на ткань через объемные деформации в сцене. Возможность привязки части ткани к анимированному объекту или прикрепление  к его поверхности – это уже другой распространённый вид ограничений. Если Вам нужно создать пару брюк, Вы должны ограничить («задержать») верхний  их участок в талии персонажа, или эта часть брюк может быть связана с некой рейкой.
 Ограничивающие связи – это очень важная функциональная часть модификатора Cloth.
Для большей гибкости, Cloth обладает способностью создавать из вершин сетки объекта большое количество группограничителей. Поэтому у пользователя имеется отличная возможность создания ограничений для различных частей одежды, привязки их к отдельным узлам поверхности или с другими Cloth–объектами.
Создание ограничений в модификаторе Cloth происходит на уровне подобъектов «Group». На этом уровне можно увидеть все вершины выделенных объектов (Cloth–объектов и Collision–объектов). Далее, их можно выделять и создать из этого выделения ограничивающую группу. Как только группа определена, её можно прикрепить или «привязать» к определённому объекту, или же воздействовать на неё внешними силами.

          Разрыв ткани
                 Ткань можно рвать. Для примера обратимся к следующему алгоритму.
                         Cloth разрывает ткань в процессе симуляции при соблюдении нескольких условий:
   ü  Воздействующие на ткань силы расягивают её таким образом, что приводит к её разрыву.
   ü  Сила, или значение порога разрыва (это то же самое) позволяет установить насколько легко ткань рвётся.
       ü  Ткань сталкивается с Collision–объектом, который начинает рвать её. (см. Collision Properties). Прежде чем запускать симуляцию необходимо указать места разрыва. Существует несколько способов как это сделать:
ü  Либо в Cloth, либо в Garment Maker, установить способность швов рваться.

ü  В модификаторе Cloth использовать уровень подобъектов «Group», для выбора тех вершин, которые будут рваться, а затем кликнуть «Make Tear», чтобы создать разрыв. Смотрите Group Rollout (Cloth).
ü  У модификатора Cloth выбираются два элемента ткани, которые будут разрываться, затем на уровне подобъектов «Group» к ним добавляются рёбра посредством выбора вершин и затем клик на кнопке «Weld». Смотрите Group Rollout (Cloth).

Разрывание ткани и модификатор Point Cache
В случае если Вы используете модификатор Point Cache для оптимизации Cloth–анимации, есть вероятность того, что разрывы не сгладятся корректно, до наступления самого разрывания. Чтобы решить эту проблему необходимо в общий стек, добавить модификатор Welder (Сварщик). Место расположения  в стеке модификатора Welder – выше Point Cache.

        Методика 
Пример: Использование опции «Keep Shape:
Если Ваш Cloth–объект изначально имеет 3d форму, которую нужно сохранить вовремя симуляции, можно использовать опцию «Keep Shape» и настроить её таким образом, чтобы сохранить эту форму или даже вернуть её в первоначальное состояние. Этот простой метод является примером того, как использовать «Keep Shape»:
1. В окне проекции «Top» или «Perspective» создайте объект – плоскость «Plane» примерно 90 на 90 единиц с количеством сегментов 20 на 20.
2. Примените к нему модификатор Bend, угол установите = 250, а ось сгиба установите «Х».
Таким образом, плоскость из первоначальной формы приобретает трубчатую.
3. Скопируйте изогнутую плоскость дважды, чтобы у Вас было три одинаковых «Plane–объекта».
Переименовываем плоскости следующим образом:
ü  Don't keep shape       «Не сохранять форму»;
ü  Keep shape                «Сохранять форму»;

ü  Reverse shape               «Противоположная форма».

4. Выберите все три плоскости и примените к ним модификатор Cloth.



5. В раскрывающемся окне «Simulation Parameters» отключите «Gravity» и установите параметр «cm/unit» = 0,5. Отключение гравитации удерживает ткань от падения вовремя симуляции и она остаётся на месте, снижение параметра «cm/unit» компенсирует относительно большой размер плоскостей.
6. В раскрывающемся свитке «Object»  кликните по кнопке  «Object Properties». (откроется диалоговое окно «Object Properties»).
7. В списке объектов вовлечённых в симуляцию, выделите все три объекта (по порядку), а затем как уже выше было рассмотрено в группе «Cloth Properties»  задайте им свойство «Cloth». Кроме того установите параметр «U bend» = 500, что в свою очередь автоматически установит «V bend» = 500.
Использование высоких значений «Bend» позволяет процессу симуляции обрабатываться значительно быстрее.
Далее Мы будем устанавливать различные свойства «Keep Shape» отдельно для каждого объекта.
8. Выделите из списка объект под именем Reverse shape «Противоположная форма» и  установите значение «Bend %» = -100.

Важно: По умолчанию это значение = 100

9. Нажмите «Ок» чтобы закрыть диалоговое окно.
10. Выберите объект Don't keep shape «Не сохранять форму» и убедитесь что галка: Object rolloutSelected Objects Manip groupUse Target State  отключена.
11. Выберите два из трёх объектов, а именно: Reverse shape «Противоположная форма» и Don't keep shape «Сохранять форму». 
Объект Keep shape «Не сохранять форму» оставьте невыделенным, затем включите опцию «Use Target State».
12. В раскрывающемся свитке «Object» нажмите кнопку «Simulate Local».

Через несколько секунд объект Don't keep shape «Не сохранять форму» начинает выпрямляться, объект Keep shape «Сохранять форму» не изменяется, а собственно объект названный нами как Reverse shape  «Противоположная форма» меняет свою форму на противоположную, в результате чего образуется отрицательный угол изгиба.

Важно: Галку «Use Target State» также можно использовать совместно с кнопкой «Grab State», для поддержания текущего состояния или же для восстановления первоначальной формы, созданной в предыдущей симуляции или подвергшейся изменению модификатором. 

Пример: Оторвать кусок ткани
1.В окне проекции «Top»  создайте плоскость. Сделайте её примерно по 150 единиц в каждую сторону. Установите равное количество сегментов в длину и ширину = 7.
2.Так же в окне проекции создайте два Dummy–объекта. По одному с каждой стороны плоскости.
Плоскость, ограниченная по бокам двумя Dummy–объектами.

3. Включите  и перейдите в сотый (100) кадр, затем анимируйте каждый Dummy–объект таким образом, чтобы они сместились примерно на 300 единиц вдоль плоскости по оси «Х». Переместите расположенный слева Dummy–объект влево, а правый вправо.
4.Выключите .
5.   Вернитесь в нулевой (0) кадр.
6.  Выберете плоскость перейдите на  панель модификации (Modify panel) и примените к плоскости модификатор Cloth.
7. Из Разворачивающегося свитка выберете «Object Properties». 3ds Max откроет диалоговое окно для Cloth. В списке объектов кликните на «Plane01» чтобы выбрать его. Сделайте кнопку –переключатель «Cloth» активной, для того чтобы объект «Plane01» вёл себя как ткань и кликните «Ок». (Все остальные настройки свойств ткани оставьте по умолчанию).
8. В стеке модификатора перейдите на уровень подобъектов «Group».

9. Выберете вершины расположенные вдоль левой стороны плоскости, а затем в раскрывающемся свитке «Group» кликните по кнопке «Make Group». Жмите «Ок» соглашаясь на имя группы по умолчанию – «Group01». После того как группа  «Group01» создана, в этом же списке групп кликните на кнопку «Node», а затем в окне проекции кликните по расположенному слева Dummy–объекту, чтобы привязать его к этой группе.
10. Повторите шаг №9 для столбца вершин и Dummy–объекта расположенных справа.
11.  Выберете два центральных столбца вершин плоскости и затем в раскрывающемся списке «Group» кликните по кнопке «Make Tear».

12. Кликаем «Ок»  соглашаясь с именем группы по умолчанию «Group03».

для создания разрыва ткани выделены центральные вершины.

3ds Max создаёт новое ограничение, которое состоит из вершин в центре Cloth–плоскости.

После нажатия на кнопку «Make Tear»

12. В стеке модификатора вернитесь вверх к уровню Cloth.


13. Object rolloutSimulation group, кликните «Simulate».

3ds Max анимирует dummy–объекты  и растягивает ткань. Как это происходит?, ткань рвётся вдоль вершин, которые Мы установили для разрыва.



Ткань рвётся в центре т.к. её края растаскиваются в стороны.

В зависимости от положения объектов «dummy», разрывы в Вашем примере могут отличаться от показных в этих иллюстрациях.

Симуляция ткани при помощи сетевых рендер ферм
Комплекс имитационного моделирования ткани (проще говоря «Симуляции») может потребовать громадного количества вычислений и занять много времени. Cloth содержит команды, которые позволяют легко запустить симуляцию на сетевой машине (часть рендер фермы), освобождая Ваш компьютер для работы с остальными частями сцены.
1.     Настройте симуляцию.
2.     Выберете объекты, которые будут Cloth–объектами в симуляции, а затем на разворачивающейся панели «Selected Object» нажмите  кнопку «Set», установите имя файла и укажите путь для кэша.
Для достижения наилучших результатов необходимо указать сетевой диск и включить галку «Force UNC Path». Таким образом, путь указывается, используя универсальное соглашение имён, и его смогут найти все сетевые компьютеры. К тому же, таким способом удобно сохранять все файлы кэша в одной и той же директории.
3.     В свитке «Simulation Parameters» включите «Sim On Render».
4.     Сохраните файл сцены.
5.     В диалоговом окне «Render Setup» включите «Net Render» и затем нажмите кнопку «Render». Таким образом, отдав эту работу одному серверу.


       В отличие от визуализации, сетевая симуляция ткани не может быть разделена между несколькими Сервер–машинами.

      Обратите внимание:  Для запуска кэша, нет необходимости просчитывать всю анимацию, для этого достаточно одного просчитанного кадра. Как только Сервер–машина начинает просчёт, компьютер начинает вычисление симуляции и сохраняет её на диск. Для проверки динамики симуляции, Вы в любой момент можете загрузить её из кэш–файла , в текущем состоянии, нажав на кнопку «Load».

Смотрите также
Object Properties Dialog (Cloth)            Диалоговое окно свойств объекта.
Cloth and Garment Maker Modifiers     Модификаторы Cloth и  Garment Maker.
Cloth and Garment Overview                 Обзор ткани и одежды.
Garment Maker Modifier                          Модификатор Garment Maker.

Темы в этом разделе:
      Разворачивающаяся панель «Object» (Cloth).
     Эта панель первая из разворачивающихся, которую вы видите в «Command panel» после применения модификатора Cloth. Она главным образом контролирует создание Cloth–симуляции и корректировку свойств материала.

     Разворачивающаяся панель «Selected Object» (Cloth).
     Эта панель позволяет запустить Кэш–симуляцию, контролировать и при необходимости  анимировать свойства ткани, текстуру или интерполяцию, а также указать карту искажений. Эта разворачивающаяся панель появляется только тогда, когда выделен всего один объект симуляции.

     Разворачивающаяся панель «Simulation Parameters» (Cloth).
     Настройки этой панели позволяют указать общие свойства симуляции такие как: гравитация, начальный и конечный кадры, установить прочность сшиваемых элементов. Эти настройки применяются к симуляции в глобальном масштабе т.е. для всех объектов вовлечённых в симуляцию.

     Group Sub-Object Level (Cloth).
     Раздел «Group» позволяют выделить группы вершин и прикреплять их к поверхностям, объектам столкновения, или другим Cloth–объектами.

     Panel Sub-Object Level (Cloth).
    На уровне подобъектов «Panel» можно выбирать (раздел «Cloth») сразу одну плоскость и изменять её свойства.

     Seams Sub-Object Level (Cloth).
Уровень подобъектов «Seams» используется для установки свойств шва.

     Faces Sub-Object Level (Cloth).

     Уровень подобъектов «Faces» позволяет интерактивно перемещать Face_ы Cloth –объектов, в то время как симулируются они локально. Этот уровень подобъектов полезен для размещения ткани в сцене более интерактивным способом.
_________________________________________________________________________________
_____________________________________________________________
_________________________________________________________________________________

Комментариев нет:

Отправить комментарий