Разработчик и художник Cartesian Caramel поделился впечатляющим техническим достижением – системой процедурного создания морщин и складок на ткани в трехмерном редакторе Blender. Эффект, продемонстрированный на костюме Человека-паука, показывает, как материал реалистично деформируется при движении персонажа, создавая естественные складки в местах сжатия и растяжения.
Художник провел подробный разбор технологии в 30-минутном видео, объяснив два основных подхода к созданию эффекта. Простой метод использует черно-белую маску для определения областей деформации, в то время как сложная версия анализирует горизонтальные и вертикальные растяжения отдельно, создавая более детализированный результат.
Система определяет, в какую сторону растягивается треугольник, после чего использует горизонтальную или вертикальную текстуру морщин для карты неровностей.
Главным элементом технологии выступают карты натяжения (tension maps), которые в реальном времени отслеживают деформацию меша и активируют соответствующие текстуры складок.
Процесс работает путем сравнения исходного положения вершин меша с их текущим состоянием во время анимации. Система вычисляет площадь граней в состоянии покоя и сравнивает ее с деформированным состоянием, определяя области сжатия и растяжения. Далее эти данные используются для управления процедурными шумовыми текстурами, имитирующими складки ткани.
Особенно сложной частью разработки стала работа с UV-тангентами – векторами, определяющими направление деформации в текстурном пространстве. Художник использовал собственную систему, разработанную несколько лет назад на основе научных статей, которая позволяет получать данные о направлении растяжения без необходимости в дополнительных расчетах нормалей.
Художник работал в Blender 4.1, отметив, что более новая версия 4.5 работает значительно медленнее с данной моделью из-за проблем с шейдерами. Система оптимизирована для работы в реальном времени и не требует предварительно созданных карт деформации – все вычисления происходят процедурно во время воспроизведения анимации.
Эффект особенно впечатляюще выглядит в области живота и плеч, где ткань естественно сжимается и растягивается при движении персонажа. Система автоматически создает складки в нужных местах, используя комбинацию горизонтальных и вертикальных шумовых паттернов, которые смешиваются с помощью функции smooth maximum.
Cartesian Caramel признал, что нынешняя версия еще не готова для продакшена и требует дополнительной работы. В частности, художник планирует улучшить способ наложения пересекающихся деформаций и возможно создать систему процедурной генерации карт морщин на основе геометрии меша.
Художник рассматривает возможность публикации системы на Gumroad, хотя отмечает, что для коммерческого релиза потребуется перенести эффект на универсальную модель человека, так как нынешняя демонстрация использует стороннюю модель Человека-паука.
Технология может найти применение не только в создании супергеройских костюмов, но и в любых проектах, требующих реалистичной деформации ткани.