1 745 просмотров

Швейные строчки и стежки в 3D Max - скрипты

Здравствуйте, друзья!

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


Автор - Роберт Евтифеев


Я попробовал два генератора стежков. Первый из них StrokeGen, о нём и поговорим.

к содержанию ↑

StrokesGen - генератор стежков

Та версия, что была у меня, не работала даже в 3D Max 2019, который у меня стоит на случай если у скрипта нет версии под новый 3D Max.

уроки по 3D

Дело в том что операторы в новых Максах немного изменили. Чтобы скрипт заработал, нужно изменить a = Normalize_Spl () на a = Normalize_Spline2 ()

Кроме того, была для мониторов с малым разрешением и не подходит для 4К монитора т.к. окошко скрипта всё скомкалось.

уроки 3D

окошко скомкалось в 3D Max 2023

Сначала я поправил окошко чтобы было видно что выбираешь в параметрах.

курсы 3d

поправленное окошко

Но скрипт заработал не так как в рекламе.

уроки по 3D

неправильная работа скрипта на плоскости

Оказалось дело в параметре maptype, который задаёт тип поверхности для модификатора displacement.
Для округлых поверхностей это сфера, а для плоскости должна быть плоскость - тогда всё работает. Т.е. по идее скрипт сработал, но не годился для плоскости. Тип проекции можно поменять и после создания стежка и вид стежка выправится.

Швейные строки и стежки в 3D Max - скрипты

правильный стежок

Я решил чуть усовершенствовать скрипт и дописал определение типа поверхности. После этого скрипт стал работать и на плоскости и на сфере, сам меняя параметр maptype.

Швейные строки и стежки в 3D Max - скрипты

работа скрипта стежков StrokeGen по сфере

курсы по 3D

работа StrokeGen на примере табуретки

курсы по 3D

StrokeGen — виды стежков

Швейные строки и стежки в 3D Max - скрипты

попробовал смоелировать гоночное кресло и сделать на нём стежки

Издалека смотрится хорошо.

Швейные строки и стежки в 3D Max - скрипты

Вблизи всё смотрится не так натурально, как хотелось бы. Плюс стало очевидно что кресло я сделал совсем не похожее на настоящее (RECARO SPORTSTER GT).

Швейные строки и стежки в 3D Max - скрипты

переделанное кресло и стежки от StrokeGen

Второй скрипт для стежков, который я порпобовал это StitchGenerator.

к содержанию ↑

StitchGenerator - генератор швейных стежков

Швейные строки и стежки в 3D Max - скрипты

примеры стежков скрипта StitchGenerator

Результат получается намного лучше (стоит скрипт тоже существенно дороже). Кроме того, StitchGenerator устроен иначе. StrokeGen создаёт сплайн и с помощью модификатора displace делает стежки геометрией. Т.к. модификатор Displace зависит от типа поверхности, но если шов идёт по разным типам поверхностей, то стежки ломаются. Частично я это исправил сделав определение типа поверхности, но работает это не всегда. Часто нужна доработка вручную, благо сплайн остается и его можно двигать. StitchGenerator же создаёт сплайн и просто расставляет объекты по сплайну. Потому он не зависит от типа поверхности. Также он накладывает материал веревки на стежки, а StrokeGen этого не делает (можно сделать вручную).

Швейные строки и стежки в 3D Max - скрипты

стежки StitchGenerator

Оба варианта, о которых я рассказал могут вполне быть использованы в реальной жизни, но им кое-чего не хватает - выдавленной под стежком кожи. Ведь когда нитка стягивает кожу, то получается вмятина, а в этих вариантах вмятины нет. То есть для вида с очень близкого расстояния они не годятся.

Есть и третий способ. С помощью текстуры стежки выдавливаются в модели. Позже я сделаю пример для этой статьи.

к содержанию ↑

Видеоролик о моих исследованиях в области генерации швейных стежков

Добавить комментарий