Симуляция ткани модификатором Cloth. 3ds Max
Учитывая объем возможностей 3ds Max, было бы странно не увидеть инструмент для создания ткани. Но учитывая, насколько сложная у нее бывает форма, создавать ткань руками слишком трудоемко. Для помощи в этой задаче существует модификатор Cloth, который создает ткань за вас.
1. Подготовка объектов к симуляции
Для начала необходимо создать минимум 2 объекта: ткань и поверхность, на которой ткань будет лежать.
Ткань чаще всего создается из плоскости. Это удобно тем, что симуляции будет проходить значительно быстрее, чем с закрытой геометрией. Также важно, чтобы у ткани было много полигонов. В примере для ткани используется 10000 полигонов. Располагаться будущая ткань должна обязательно над поверхностью, куда она ляжет. Это важно, т.к. во время симуляции она будет опускаться вниз по своей оси.
Второй объект может быть практически любым. Но очень важно, чтобы он имел как можно меньше острых углов, а на всех краях присутствовали фаски. Также, в некоторых случаях, ткань может понадобиться предварительно анимировать, опустив ниже поверхности стола. Пример создания анимации можно увидеть в статье «Анимация и Motion blur в 3ds Max»
Полное обучение: «3ds Max и CORONA для дизайнеров интерьера и визуализаторов»
2. Использование модификатора
Теперь нужно определить объекты симуляции перейти в Modify – Modifier List – Cloth – Object Properties.
В открывшемся окне необходимо выбрать все объекты, которые будут участвовать в симуляции. В данном случае нужно добавить стол. Для этого нажмите Add Objects. В открывшемся окне выберите необходимый предмет и нажмите Add.
После добавления объектов нужно их настроить. Выберите объект ткани в окне Object Properties и установите флажок Cloth. Эта функция определит, какой объект считать тканью. После этого выберите объект, куда ткань будет накладываться (Table) и включите флажок Collision Object и измените параметр Offset на значение от 5 до 10. Флажок Collision Object определяет объект как твердое препятствие.
Offset создает небольшой отступ коллизии от края. Это улучшает результат наложения ткани.
Как только всем объектам будет назначен тип, нажмите OK. После этого окно Object Properties закроется. Чтобы начать симуляцию нажмите Simulate.
Результат симуляции можно выбрать, сдвигая ползунок кадров. Найдя подходящее положение, конвертируйте плоскость в Editable Poly. При желании можно воспользоваться модификаторами Shell (для создания объема), Turbosmooth (для уменьшения угловатости ткани), а также оптимизировать количество полигонов. Инструменты для этого можно найти в статье «5 модификаторов, меняющие количество полигонов 3ds Max». (ссылка на статью)
Также можно создать материал с цветовой текстурой в виде карты и наложить на ткань. Описание полезных карт можно найти в статье «10 самых нужных карт 3ds Max»
Модификатор Cloth очень объемный инструмент. Его можно использовать для самых разных типов тканей, задавать множество свойств. Более того, это не единственный модификатор – симулятор в 3ds Max. Симулировать можно даже плавление объектов. Безусловно, есть программы, которые справятся с похожими задачами лучше. Но не всегда есть возможность к ним обратиться. В то время как 3ds Max позволяет создавать все вещи в одном месте.
Краткий перевод основных настроек свойства ткани в модификаторе Cloth
Краткий перевод основных настроек свойства ткани в модификаторе Cloth:
U Bend / V Bend — Сопротивление на изгиб.
Чем выше это значение, тем меньше ткань сможет согнуться. Хлопчатобумажная ткань может сгибаться легче, чем кожа, поэтому значение 15,0 для U и V Bend может быть подходящим для хлопка, в то время как 50,0 больше подходит для кожи.
По умолчанию, U Bend и V Bend параметры заблокированы вместе, то есть, изменение одной настройки, приводит к назначению другой настройке того же значения. Вы можете установить различные значения для двух только тогда, когда Anisotropic выключена. Рекомендуется делать это только в случае применения для Garment Maker объектов.
U B-Curve / V B-Curve — Сопротивление к изгибу (как складки ткани).
Значение=0 установленное по умолчанию, делает силу сопротивления изгибу постоянной. Значение 1 делает ткань очень устойчивой к изгибу, так как угол между треугольниками приближается к 180 градусам. Чтобы избежать проникновения двух соседних треугольников друг в друга можно увеличить значение этого параметра.
По умолчанию, U B-Curve / V B-Curve параметры заблокированы вместе, то есть, изменение одной настройки, приводит к назначению другой настройке того же значения. Вы можете установить различные значения для двух только тогда, когда Anisotropic выключена. Рекомендуется делать это только в случае применения для Garment Maker объектов.
U Stretch / V Stretch — Сопротивление к растяжению.
Значение 50, выставленное по умолчанию , подходит для большинства типов ткани. Большее значение приведет к большей жесткости, тогда как меньшее к большей эластичности (как резина).
По умолчанию, U Stretch / V Stretch параметры заблокированы вместе, то есть, изменение одной настройки, приводит к назначению другой настройке того же значения. Вы можете установить различные значения для двух только тогда, когда Anisotropic выключена. Рекомендуется делать это только в случае применения для Garment Maker объектов.
U Compress / V Compress — Сопротивление сжатию.
Хотя эти значения по умолчанию равны 50,0, как и их коллеги значения Stretch, но присвоение значений ниже значения Stretch может дать хорошие результаты, потому что, когда ткань сжимается вдоль волокон, она стремится к изгибу, а не сокращению.
По умолчанию, U Compress / V Compress параметры заблокированы вместе, то есть, изменение одной настройки, приводит к назначению другой настройке того же значения. Вы можете установить различные значения для двух только тогда, когда Anisotropic выключена. Рекомендуется делать это только в случае применения для Garment Maker объектов.
Shear — Сопротивление сдвигу.
Более высокие значения приводят к более жесткой ткани в результате. Сдвиг определяет, сколько отдельные треугольники могут деформироваться. Если бы вы сложите края треугольника в прямую линию, то эта величина будет представлять, как долго эта линия может растягиваться. С высоки значением, эта длина будет суммой длин всех сторон в покое. Низкое значение позволяет этой длине быть больше суммы длин всех сторон треугольников в покое, но длина растянутых сторон не соотносится один-к-одному. Т.е. одна сторона полигона может растягиваться больше чем другая, пока общая сумма сдвига не превысится.
Вес ткани на единицу площади (в г / см 2). Более высокие значения означают тяжелые ткани, как джинсовая ткань. Используйте меньшие значения для легкой ткани, как шелк.
Damping — Демпфирование, затухание.
Чем больше это значение, тем более вяло ткань будет реагировать. С более низким значением, ткань будет вести себя с большей прыгучестью. Ткань с большей степенью затухания будет останавливаться раньше, чем ткань с меньшим затуханием. При высоких значениях затухания, ткань ведет себя, как будто движется через масло. Чрезмерное затухание может привести к неустойчивости в симуляции.
Совет: Начать лучше с установки демпфирования = 0,01. Если ваша симуляция требует большего затухания, попробуйте постепенно увеличивать это значение.
Plasticity — Склонность ткани сохранять свои текущие деформации (то есть углы изгиба).
Это отличается от настройки Keep Shape, в которой определяется степень в которой ткань имеет тенденцию сохранять свою первичную деформацию (и от степень указанной в Target State). Если вы установите пластичность = 100,0, то ткань не будет пытаться изменить угол между треугольниками. Если вы хотите добиться жесткой ткани, но вы не хотите, чтобы ткань «вздувалась пузырем», можно увеличить значение пластичности.
Определяет виртуальную толщину ткани с целью выявления cloth-to-cloth столкновений. Эта величина имеет значение, если cloth-to-cloth столкновения отключены. Большие значения держат ткань разделенной большими расстояниями. Слишком большие или слишком малые значения в этой области негативно сказываются на симуляции: слишком большие — вмешиваются в естественное поведение ткани; слишком малые — приводят к чрезмерному увеличению времени просчета. Задаваемое данным параметром расстояние измеряется в сантиметрах и должно быть меньше, чем размер треугольников из которых состоит объект ткани. Установка = 0 позволяет ткани автоматически назначать разумное соотношение толщины.
Значение силы применяемой тканью для отражения других объектов. Этот параметр имеет значение, если cloth-to-cloth столкновения отключены. Симулятор будет использовать силу отталкивания, определенную данным параметром, чтобы предотвращать вступление ткани в контакт с другими объектами ткани. Можно увеличить значение параметра, если происходит много столкновений между различными частями ткани, или, если ткань имеет тенденцию к взаимопроникновению.
Air Res. — Сопротивление воздуха.
Значение данного параметра определяет, сколько воздуха будет влиять на ткань. Более высокие значения подходят для плотной ткани, а более низкие для более рыхлой ткани (напр. вязанная одежда).Dyn. Fric. — Динамическое трение.Динамическое трение между тканью и твердыми телами. Большие значение приводят к сильному трению и меньшему скольжению ткани по объекту. Меньшее значение позволяет ткани легко скользить по объекту, подобно поведению шелка.
Static Fric. — Статическое трение.
Статическое трение между тканью и твердыми объектами. Когда ткань находится в неподвижном состоянии, это значение будет контролировать ее способность оставаться на месте, или же ускользать.
Self Fric. — Трение ткани об саму себя.
Это похоже на динамическое и статическое трение, но распространяется на cloth-to-cloth или само-столкновение. Большее значение приводит к большему трению.
Seam Force — Сила швов.
В настоящее время не используется и хранится только для обратной совместимости с более старыми версиями бывшего ранее в употреблении продукта под названием Stitch (Стежок). Это была глобальная сила шва, но теперь она определяется на основе seam-by-seam на уровне подобъекта Seams.
U Scale — U Масштаб.
Контролирует степень уменьшения или расширения ткани в направлении U (как определено в Garment Maker). Для сетки не созданной с помощью Garment Maker этот параметр применяет равномерное масштабирование к ткани вдоль обеих осей, а параметр V Scale игнорируется. Значение меньше 1 приведет к сокращению ткани во время симуляции, в то время как значение больше 1 будет растягивать ткань.
V Scale — V Масштаб.
Контролирует степень уменьшения или расширения ткани в направлении V (как определено в Garment Maker). Значение меньше 1 приведет к сокращению ткани во время симуляции, в то время как значение больше 1 будет растягивать ткань.
Depth — Глубина столкновения для объекта ткани.
Если часть ткани достигает этой глубины внутри объекта столкновения, то симуляция не будет продолжать выталкивать ткань из сетки. Эта величина измеряется в единицах 3ds Max.
Чтобы задать значение глубины для объекта ткани, используйте эту настройку. При этом параметр Use Cloth Depth/Offset должен быть включен.
Offset — Расстояние поддерживаемое между объектом ткани и объектом столкновения.
Очень низкое значение может привести к проступанию сетки объекта столкновения из под ткани. Очень высокое значение приводит к эффекту парения ткани над объектом столкновения. Эта величина измеряется в единицах 3ds Max.
Чтобы указать значение смещения характерное для объекта ткани, используйте эту настройку. При этом параметр Use Cloth Depth/Offset должен быть включен.
Степень, в которой ткань прилипает к объекту столкновения. Диапазон = от 0,0 до 99999,0. По умолчанию = 0,0. Вы можете использовать этот параметр для имитации эффектов, таких как мокрая ткань. Установка на 1,0 должна быть достаточной, чтобы удерживать материал по умолчанию на поверхности от собственного веса.
Модификатор Cloth для 3ds Max и симуляция ткани с его помощью
3ds Max настолько разноплановая программа, что возможности ее инструментов позволяют делать практически все что угодно, связанное с 3D-моделированием. Модификатор Cloth как раз таки и является подобным инструментом, позволяющим симулировать ткани прямо в 3ds Max. Пригодится это может в создании одежды, различных ковров, одеял, штор, обивки мягкой мебели и т. д.
Сама же симуляция похожа на процесс рендеринга, что потребляет мощности вашего процессора или видеокарты. Отсюда можно сделать вывод, что чем мощнее ваши компьютерные комплектующие, тем быстрее будет происходить процесс симуляции ткани. Но как правило, симуляция на видеокарте длится быстрее, чем на процессоре. Давайте поближе познакомимся с этим интересным функционалом.
Содержание
Подробнее о том, для чего нужен модификатор Cloth
Модификатор Cloth — это встроенный в 3ds Max инструмент для симуляции тканей и прочих мягких объектов. Его функционал схож с другой специализированной программой — Marvelous Designer. Сразу хочу сказать, что сам пользуюсь именно Marvelous Designer, потому что эта программа изначально заточена под симуляцию тканей и располагает широчайшим функционал для этого. Однако модификатор Cloth вполне себе справляется с поставленной задачей и его можно использовать как альтернативу стороннему программному обеспечению.
Да, никто не запрещает вам пользоваться этим модификатором, но технологии не стоят на месте и его возможности частично устарели в сравнении с тем же marvelous Designer. Поэтому мы быстро пробежимся по основным настройкам и наглядно посмотрим на возможности применения Cloth при создании самых простых 3D-объектов.
Настройки и возможности модификатора Cloth в 3ds Max
Настроек у Cloth очевидно очень много: различные параметры по силе сшивки тканей, давление, степень надутости тканей, толщина тканей, уровень коллизии, внутренний объем, растяжение и даже возможность выбора типа самой ткани (хлопок, вельвет, резина бархат и т. д.). Вдаваться в каждый параметр не вижу особого смысла, иначе этот материал растянется на несколько десятков страниц. Хочу лишь показать вам быстрое и грамотное применение функционала, затронув только основные параметры. Ну, а если вам интересно изучить каждую функцию поподробнее, то можете ознакомиться с этим материалом.
Наглядное применение модификатора Cloth
Покажу вам самый банальный, но не менее наглядный пример с обычным лоскутом ткани, который будет играть роль скатерти в моем случае. Можете повторить за мной, создав обычный Box-объект и Plane над ним. Вот несколько действий, которые нужно выполнять для симуляции ткани:
- Выделите объект, который впоследствии будет симулироваться.
- Перейдите в раздел Modify на панели инструментов справа.
- В списке модификаторов Modifier List найдите модификатор Cloth и выберите его.
- В разделе Object модификатора Cloth нажмите на кнопку Object Properties.
- В открывшемся меню нажмите кнопку Add Objects… пункта Objects in Simulation и добавьте объекты из сцены, которые по вашему мнению будут участвовать в симуляции. В моем случае это Plane-объект и 3D-модель стола.
- Кликните по объекту, который должен будет имитировать ткань в вашей сцене и активируйте пункт Cloth в правой верхней части меню для него.
- Затем также кликните по объекту, который должен оставаться статичен и будет имитировать поверхность, на которую наложится ткань, и активируйте пункт Collision Objects в правой нижней части меню для него.
- Далее нажмите на кнопку ОК, тем самым закрыв данное меню с настройками симуляции.
- Найдите кнопку Simulate в разделе Object модификатора Cloth, нажмите на нее и дождитесь окончания симуляции.
После проделанных вами действий, объект, подразумеваемый вами как ткань, начнет постепенно приобретать соответствующую форму, плавно ложась на поверхность другого 3D-объекта. Процесс симуляции отнюдь не быстрый, учитывая, что сам Plane-объект должен иметь большое количество сегментов для большей реалистичности, а это увеличивает длительность симуляции. Но как только он завершится, вы получите приемлемый результат, сделав буквально несколько кликов. По аналогии со скатертью симулируются и другие объекты из ткани: шторы, покрывала, подушки, полотенца и т. д.
После завершения вы можете зафиксировать ползунок анимации с кадром, который устраивает вас и производить дальнейшие манипуляции с объектом: текстурирование, придание объема, сглаживание, наложение материалов и т. д.
Попробуй себя в 3D-визуализации на 5 дневном бесплатном марафоне от 3DCLUB
Советы по модификатору Cloth
→ Если ткань частично проходит сквозь поверхность объекта, на котором лежит, то увеличьте значение Self Collision в разделе Simulation Parameters модификатора Cloth. Не забудьте после этого поставить на этот пункт галочку для активации.
→ Если процесс симуляции занимает у вас неприлично длительное время, то одним из виновников в этом может быть параметр Step раздела Simulation Parameters. Оставляйте его значение неизменным — 0.02. Подробнее изучить за что отвечает параметр Step модификатора Cloth можно здесь.
→ Если процесс симуляции на вашем процессоре занимает дольше времени, чем хотелось бы, то примените к вашему будущему тканевому объекту модификатор mCloth, вместо Cloth. Его функционал практически аналогичен, но симуляция займет меньше времени, так как процесс будет происходить на видеокарте.
→ Можете экспериментировать с готовыми пресетами настроек для симуляции ваших тканей. Например, одним из самых гибких и распространенных является Cotton, тобишь хлопок. Если вам непонятны функции каких-либо параметров, то жду ваши вопросы в комментариях ;). Более же подробно про все возможности модификатора Cloth вы можете почитать вот в этом материале.
→ После симуляции вы можете применить модификатор Shell и TurboSmooth, чтобы, к примеру, полотенце, коврик или штора выглядели объемнее, сглаженнее и более правдоподобно.
Выводы
Как вы и сами убедились из всего вышеперечисленного, модификатор Cloth абсолютно незамысловат и прост в использовании. Однако я не могу отдать ему полное предпочтение для повседневного использования. Единственным плюсом, которым он выделяется на фоне с остальными схожими инструментами, это его шаговая доступность в 3ds Max и отсутствие нужды в скачивании сторонних программ. В том же Marvelous Designer намного быстрее происходит симуляция, обилие дополнительных параметров, множество пресетов тканей и налаженная стабильность симуляции.
Мы пробежались только по базовым аспектам симуляций тканей. Есть профессии в 3D, которые направлены на создание одежды в самых разных стилях, снаряжения для туристов и военных, крутых образов для персонажей фильмов и компьютерных игр. Практически во всех сферах 3D-моделирования симуляция тканей является обязательным фундаментом для изучения.
Таким образом, только вам решать стоит ли использовать этот инструмент на регулярной основе или все-таки отдать предпочтение чему-то более современному и продвинутому. Но в любом случае, вы теперь будете знать, что у вас есть полезный запасной инструмент в лице модификатора Cloth на случай выхода из строя основного или для получения быстрого результата.
Интересно погрузиться в мир многофункциональных инструментов? Тогда приходите к нам в 3D CLUB и записывайтесь на бесплатный курс по 3D-моделированию и визуализации. Подобного материала там предостаточно.
Шпаргалка по модификатору Cloth
Сегодня рассмотрим и закрепим в памяти основные особенности модификатора Cloth в 3Ds Max.
Cloth — это модификатор, позволяющий симулировать процессы свойственные для «мягких» объектов. Таких как мягкие диваны, подушки, шторы, одежда и т.п.
Cloth располагается в списке модификаторов и может быть применен к объектам, имеющим полигональную сетку. Если на момент применения у Вас выделено несколько объектов — они попадают в одну симуляцию.
После применения модификатора Вы сможете управлять им через свойства. Отметил основные на скриншоте:
• Object properties — окно управления основными свойствами объектов. Тут Вы можете определить, чем является объект (тканью, резиной, манекеном для ткани) и настроить его свойства. Вы назначаете объекту роль. Подробнее расскажу чуть дальше.
• Simulate local — основной режим просчета объектов в симуляции. Если объектам не назначены роли — работать на будет.
• Simulation parameters — свойства самой системы симуляции. Не объектов, а в целом системы. Такие параметры как гравитация, самопересечение, учитывание швов выкроек.
Давайте рассмотрим основные параметры свойств объектов в Object properties:
Слева у нас список объектов в симуляции, те объекты которые будут между собой взаимодействовать. Тут можно добавить или убрать объекты из симуляции, и задать им роли.
После того как вы выбираете в списке слева объект/объекты, Вы можете определить для них роль. Это может быть:
• inactive — объект находится в симуляции, но никак себя не проявляет. Удобно для отключения тех объектов, которые не оказывают влияния на другие, или для тех, которые нужно «заморозить».
• cloth — основное состояние объекта — ткань. После выбора этой роли, разблокируются свойства ткани. Про основные свойства расскажу позже.
• collision object — объект коллизии. Препятствие, которое может ограничить движение ткани. Удобно использовать эту роль для имитации пола, земли или создания манекенов для тканей. После выбора этой роли — разблокируются свойства этой роли.
Теперь давайте рассмотрим ключевые параметры ткани и объекта коллизии.
Cloth properties:
• U/V bend — сопротивление ткани на изгиб, чем больше — жестче.
• Thickness — имитация толщины ткани в системных единицах.
• Density — плотность. Чем больше, тем тяжелее ткань.
• Pressure — для замкнутых объемных объектов. Позволяет «надувать» объекты, задавая давление внутри.
Collision object properties:
• Depth — глубина «внутрь» поверхности, из которой будет выталкиваться любой попавший внутрь поверхности объект.
• Offset — отступ «вверх» от поверхности, за который не возможно будет проникнуть ни одному объекту в симуляции. Он будет парить над поверхностью на заданную величину.
Это основные свойства, которыми управляются любые симуляции.
Так же несколько важных моментов!
На объекты коллизии не действует гравитация.
Если Вам необходимо заморозить не объект целиком, а лишь какие то его точки (например верх шторы на карнизе), Вы должны использовать группы. Для этого выделите нужный объект в симуляции и перейдите на подуровень group:
Затем выделите нужные точки и нажмите make group. У Вас появится группа в окне внизу с припиской «не назначенная», выберите нужную группу и выберите свойство для группы. Например, drag или preserve для заморозки точек в пространстве. Используя группы, Вы можете получать разные свойства для разных участков модели.
Не забывайте о том что симуляция достаточно ресурсоемкий процесс — поэтому не используйте ее для слишком высокополигональных объектов. С другой стороны, сетка должна быть равномерной и достаточно плотной, чтобы объекту было чем загибаться, принимать нужную форму и не выглядел топорно.
Вы можете менять свойства объектов для каждого нажатия на кнопку симуляции, более точно настраивая поведение тканей и объектов коллизий.
При помощи симуляции очень удобно делать скатерти, шторы, пледы, постельное белье, одежду и прочие подобные объекты. Уверен, что эта краткая шпаргалка поможет Вам сориентироваться в таком полезном инструменте 😉