интеграция в гудини, настройка vellum cloth
Исходный размер 1140x1600
Данный проект является учебной работой студента Школы дизайна или исследовательской работой преподавателя Школы дизайна. Данный проект не является коммерческим и служит образовательным целям

в этой главе рассматривается импорт модели и анимации в гудини, сборка веллум солвера, подходящая для большинства случаев

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

подготовка геометрии

для начала обратить внимание на несколько пунктов:

  1. есть ли толщина на ткани, при необходимости удалить (в последствии ее можно будет добавить уже после симуляции)
big
Исходный размер 1560x560

футболка в разрезе, с толщиной и без

  1. избегать self-collision (в а-позе или т-позе одежда не должна проникать друг в друга), иначе симуляция начнется сразу с ошибки
big
Исходный размер 1560x560

нет селф-коллизий

  1. анимация загружена в fbx или abc

  2. все паттерны соединены между собой (например, рукав не отваливается от остальной футболки) - если не соединены, то воспользоваться нодой fuse

разделение одежды на части

верх и низ желательно просчитывать отдельно, а потом собирать кэши

Исходный размер 1560x560

разделение на части

некоторые части (как накладки, карманы, ботинки, перчатки) можно не симулировать вообще, а деформировать сразу через point deform

Исходный размер 1560x560

деформация через point deform

импорт анимации и создание преролла

общий принцип:

  1. настройка констрейнтов
  2. симуляция в vellum solver
  3. кэш в vellum i/o
  4. доработка в vellum post process
  5. перенос с лоу-поли на оригинальную геометрию при помощи point deform
  6. сборка всех элементов одежды

fbxcharacterimport (импорт анимации и персонажа) + bonedeform

Исходный размер 1560x560

преролл

при необходимости можно использовать rig pose для анимированной позы, чтобы исправить положение рук/ног в случае, если они пересекаются с одеждой

преролл — создание короткой анимации между т-позой и анимированной позой персонажа. необходима для корректной симуляции, так как одежда шьется на т-позе

преролл осуществляется при помощи ноды skeletonblend между т-позой и анимированной позой (около 15 кадров). первый ключ параметра weight ставится на т-позу, а второй на анимированную

в ноде skeletonblend нужно указать, что мы забираем данные только по ротейту костей (либо по rotate и translate)

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

Исходный размер 1560x560

pin group animation

если необходимо, чтобы часть геометрии оставалась статичной и не сползала (как, например, резинка на штанах), то эта часть выделяется отдельной группой (pin)

однако если просто запиннить ее, то выйдет, что точки остаются на месте, поэтому анимация на этот участок передается отдельно через point deform где на 1 вход одежда, 2 - timeshift первого кадра анимации, 3 - анимированный коллайдер, после чего это передается в солвере в advanced - target sop path

также необходимо создать vellum pin constraint, в котором будет указана эта группа и проставлена галочка match animation

настройка параметров солвера и констрейнов

общий принцип разделения:

для каждой части констрейны настраиваются отдельно, попарно совмещаются и подаются в солвер

верх - отдельно, низ - отдельно, шнурки/ремни - отдельно

vellum constraints — это условие, которое определяет, как элементы симуляции взаимодействуют друг с другом и сохраняют физические свойства, например, жёсткость, растяжение, изгиб и давление

Исходный размер 1560x560

визуализация pin to target constraint

констрейнты выделяются в виде сфер или линий на тех участках, где они действуют

substeps - это дополнительные промежуточные вычислительные шаги, которые делят основной временной шаг симуляции на более мелкие части. помогают повысить точность и стабильность расчёта динамики ткани

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

Исходный размер 866x310

substeps / constraint iterations

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

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

bend - это жесткость изгиба, параметр контролирует сопротивление ткани или объекта сгибанию и образованию складок

интеграция в гудини, настройка vellum cloth
Проект создан 03.12.2025
Глава:
1
2
3
4
5
Мы используем файлы cookies для улучшения работы сайта НИУ ВШЭ и большего удобства его использования. Более подробную...
Показать больше