Здравствуйте, друзья!
По мере развития в 3D модели получаются всё лучше, но часто не хватает важных деталей, например, красивых швейных стежков. Мне тоже не хватало и я стал изучать эту тему. Изготовление стежков вручную мы пропустим т.к. во-первых, таких уроков хватает в интернете, а во-вторых, это муторное дело делать их вручную т.к. стежков обычно очень много.
Я попробовал два генератора стежков. Первый из них StrokeGen, о нём и поговорим. к содержанию ↑
StrokesGen - генератор стежков
Та версия, что была у меня, не работала даже в 3D Max 2019, который у меня стоит на случай если у скрипта нет версии под новый 3D Max.
Дело в том что операторы в новых Максах немного изменили. Чтобы скрипт заработал, нужно изменить a = Normalize_Spl () на a = Normalize_Spline2 ()
Кроме того, была для мониторов с малым разрешением и не подходит для 4К монитора т.к. окошко скрипта всё скомкалось.

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

поправленное окошко
Но скрипт заработал не так как в рекламе.
Оказалось дело в параметре maptype, который задаёт тип поверхности для модификатора displacement.
Для округлых поверхностей это сфера, а для плоскости должна быть плоскость - тогда всё работает. Т.е. по идее скрипт сработал, но не годился для плоскости. Тип проекции можно поменять и после создания стежка и вид стежка выправится.
Я решил чуть усовершенствовать скрипт и дописал определение типа поверхности. После этого скрипт стал работать и на плоскости и на сфере, сам меняя параметр maptype.
Издалека смотрится хорошо.
Вблизи всё смотрится не так натурально, как хотелось бы. Плюс стало очевидно что кресло я сделал совсем не похожее на настоящее (RECARO SPORTSTER GT).
Второй скрипт для стежков, который я порпобовал это StitchGenerator.
к содержанию ↑StitchGenerator - генератор швейных стежков
Результат получается намного лучше (стоит скрипт тоже существенно дороже). Кроме того, StitchGenerator устроен иначе. StrokeGen создаёт сплайн и с помощью модификатора displace делает стежки геометрией. Т.к. модификатор Displace зависит от типа поверхности, но если шов идёт по разным типам поверхностей, то стежки ломаются. Частично я это исправил сделав определение типа поверхности, но работает это не всегда. Часто нужна доработка вручную, благо сплайн остается и его можно двигать. StitchGenerator же создаёт сплайн и просто расставляет объекты по сплайну. Потому он не зависит от типа поверхности. Также он накладывает материал веревки на стежки, а StrokeGen этого не делает (можно сделать вручную).
Оба варианта, о которых я рассказал могут вполне быть использованы в реальной жизни, но им кое-чего не хватает - выдавленной под стежком кожи. Ведь когда нитка стягивает кожу, то получается вмятина, а в этих вариантах вмятины нет. То есть для вида с очень близкого расстояния они не годятся.
Есть и третий способ. С помощью текстуры стежки выдавливаются в модели. Позже я сделаю пример для этой статьи.
к содержанию ↑










