Введение#

Симуляция ткани – один из самых сложных аспектов компьютерной графики. Ткань – обманчиво простой предмет из реального мира, который считается само собой разумеющимся, но на самом деле он имеет очень сложные внутренние взаимодействия и взаимодействия с окружающей средой. Ткань обычно моделируется как 2D-меш для имитации объектов реального мира, таких как ткани, флаги, баннеры. Тем не менее, ткань также можно использовать для моделирования трехмерных объектов, таких как плюшевые мишки, подушки, воздушные шары или мячи.

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

../../_images/physics_cloth_introduction_example1.jpg

Пример ткани.#

../../_images/physics_cloth_introduction_oncarved-wood.jpg

Ткань на резных деревянных человечках (производство motorsep).#

../../_images/physics_cloth_introduction_example2.jpg

Пример ткани.#

Как только к мешу будет добавлена физика ткани, в набор модификаторов объекта будет добавлен модификатор «Cloth». В качестве модификатора он может взаимодействовать с другими модификаторами, такими как «Armature» и «Smooth». В этих случаях конечная форма меша вычисляется в соответствии с порядком набора модификаторов. Например, вы должны сгладить ткань после того, как модификатор вычислит форму ткани.

Вы можете применить модификатор «Cloth», чтобы заморозить или зафиксировать форму меша в этом кадре, при этом модификатор будет удалён. Например, вы можете накинуть на стол плоскую ткань, запустить симуляцию, а затем применить модификатор. В этом смысле вы используете симулятор, чтобы сэкономить много времени на моделирование.

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

Расчёт формы ткани в каждом кадре выполняется автоматически и в фоновом режиме; таким образом, вы можете продолжать работу, пока рассчитывается симуляция. Однако это требует большого количества ресурсов ЦП, и в зависимости от мощности вашего ПК и сложности симуляции; объём ЦП, необходимый для расчёта меша, варьируется, как и задержка, которую вы можете заметить.

Примечание

Не забегайте вперёд

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

Рабочий процесс#

Общий процесс работы с тканью заключается в следующем:

  1. Смоделируйте объект-ткань как общую начальную форму.

  2. Обозначьте объект как ткань на вкладке физики в свойствах.

  3. Смоделируйте другие объекты отклонения, которые будут взаимодействовать с тканью. Убедитесь, что модификатор «Deflection» находится последним в наборе модификаторов после любых других модификаторов деформации меша.

  4. Осветите ткань и назначьте материалы и текстуры, при желании сделайте UV-развёртку.

  5. При желании добавьте объекту частицы, например, пар, исходящий от поверхности.

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

  7. При необходимости «измените» меш до определённого момента в симуляции, чтобы получить новую начальную форму «по умолчанию».

  8. Вносите небольшие изменения в меш покадрово, чтобы исправить небольшие прорехи.

Совет

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

Пружины (springs)#

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

../../_images/physics_cloth_introduction_springs.png

Иллюстрация тканевых пружин; пружины растяжения (синие), пружины сжатия (красные), пружины сдвига (голубые) и пружины углового изгиба (зелёные).#

Пружины растяжения (tension springs)

Контролировать жёсткость ткани.

Пружины сжатия (compression springs)

Контролировать величину силы, необходимой для складывания или сжатия ткани.

Пружины сдвига (shear springs)

Как пружины сжатия, но контролируют угловую деформацию.

Пружины углового изгиба (angular bending springs)

Контролировать, насколько ткань устойчива к складыванию или смятию.

Всеми четырьмя типами пружин можно управлять независимо на панели физических свойств. Хотя эти настройки управляют поверхностными пружинами, при желании для 3D-мешей можно использовать внутренние пружины, которые ведут себя аналогично мягким телам.