Render.ru
Поддержать
Сохранить
ProcXel.A
ПОДПИСАТЬСЯ
  • ПРЕДЛОЖИТЬ ПРОЕКТ
  • ДОБАВИТЬ В КОНТАКТЫ
3Записей
4Следят
11Читает
19.3 KЗаходов

Заплетаем углеродные нити в Blender

Blender

Пока люди прошлого генерируют текстуры с помощью нейросетей, люди будущего генерируют текстуры с помощью шейдер нодов в Блендере! И сегодня мы сгенерируем карбоновую текстуру, чтобы обклеить карбоном всё на свете.

carbon.gif


Для создания такого материала нам сначала нужно сплести девять нодовых групп. Вот таких вот:

Screenshot 2025-04-18 130047.jpg


Начнем с группы Thread Math. Соберем ее из небольшого количества математических нод и посмотрим, что эта группа умеет делать.

Screenshot 2025-04-18 130556.jpg


На вход группы Thread Math подается градиент от текстуры волновой пилы. Из этого градиента формируется маска для нити будущей текстуры ткани. Параметр Thickness настроен так, чтобы управлять толщиной нити от 0 до 1. Параметры From и To указывают на то, из какой части градиента вырезать маску нити.

Screenshot 2025-04-18 131029.gif


Из одного градиента нам будет нужно четыре нити, поэтому мы будем использовать для этого четыре группы Thread Math с последовательными значениями From и To.

Screenshot 2025-04-18 133023.gif


Теперь нам нужно будет эти маски отдельных нитей склеивать вместе. И для этого мы создадим новую группу Threads Adds.

Screenshot 2025-04-18 133820.jpg


На вход этой группы приходит четыре отдельные маски нитей от групп Thread Math и склеиваются вместе. Если подвигать Thickness, то можно увидеть, как изменяется толщина нитей.

Screenshot 2025-04-18 134121.gif


Теперь с помощью этих двух групп мы можем из текстуры волновой пилы добыть маски четырех продольных и поперечных нитей. Но эти маски плоские, а нам нужны объемные. Для имитации переплетения нитей сделаем новую группу Wave Color Math.

Screenshot 2025-04-18 140031.jpg


В этой группе мы впервые встречаемся с магическим числом, на первый взгляд не поддающимся разумному объяснению - это 6.283. Поэтому подробнее разберемся, что это значит. В Color приходит градиент от волновой пилы. Этот градиент сдвигается с помощью Phase. Для правильной имитации изгиба нитей нам нужно, чтобы на один волновой градиент накладывалось два пика изгибающей волны, поэтому мы pi умножаем на 2 и получаем 6.283. Просто печатаем во второй математической ноде в поле Value pi*2, жмем Энтер, и значение превращается в 6.283. Далее текстуру пилы преобразуем в текстуру синуса. В конце сжимаем яркость синуса от (-1, 1) до (-0.25, 0.25) и сдвигаем до (0, 0.5). Потому что отрицательных цветов не бывает, и нам ещё нужно немножко черно-белого пространства для других текстур, которые будут смешиваться с этой. Понятно, что ничего непонятно. Поэтому просто двигаем фазу и смотрим, как волна бегает по квадратику. Если не бегает, значит что-то собрали не так.

Screenshot 2025-04-18 140447.jpg


Следующая группа Cyrcle Gradient Math. Тут такая огромная куча нод, что я и сам уже давно забыл, что они делают.

Screenshot 2025-04-18 143635.jpg


И чтобы вспомнить, подключим к этой группе текстуру волновой пилы и увидим, что, оказывается, эта группа добавляет нитям объем. Так как на один градиент у нас будет четыре нити, в Threads Count нужно не забыть поставить 4. Этот объем мы потом смешаем с плоскими нитями и волнами на них.

Screenshot 2025-04-18 144403.jpg


Теперь сделаем группу Subtract Cross Threads.

Screenshot 2025-04-18 144810.jpg


Эта группа вырезает из маски одной продольной нити две дырки от масок двух поперечных нитей. Вот так вот.

Screenshot 2025-04-18 145413.jpg


И тут уже можно догадаться, что если нарезать таких продольных дырявых нитей и склеить их с поперечными нитями, получится эффект переплетения нитей. Но где нам взять столько нитей? Правильно. Сделаем ещё одну группу, в которой будут все эти нити на выходе. Группа Threads Math! Не путать с Thread Math!

Screenshot 2025-04-18 145833.jpg


Как мы видим, группа простая, состоит из групп, которые мы уже делали, плюс немного математических нод. На вход группы приходит Color от текстуры волновой пилы. Thickness - это всё та же толщина нити от 0 до 1. Phase задает смещение для четырех нод Wave Color Math. А Cyrcle Volume - это значение от 0 до 1, которое управляет "объемностью" нитей, если 1, то нить будет как бы круглой, а если 0, то плоской. На выход группы мы выводим четыре маски продольных нитей и четыре волны, которые будут изгибать четыре поперечных нитей. Смотрите, не перепутайте. Еще на выходе будет Color, который выводит объем нитей.

Screenshot 2025-04-18 151727.gif


Теперь создадим группу Add Waves to Threads, которая будет добавлять изгибы на нитях.

Screenshot 2025-04-18 152531.jpg


В Threads будет приходить объем нитей, в маски - маски, в волны - волны. И тогда мы получим объемные и изогнутые нити. Вот так вот.

Screenshot 2025-04-18 152943.jpg


Как мы знаем, в реальной ткани нити состоят из ещё более тонких нитей. Поэтому добавим в нити ещё нитей, чтобы мы могли заплетать нити пока заплетаем нити. Сделаем новую группу SubThreads Settings.

Screenshot 2025-04-18 153257.jpg


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

Screenshot 2025-04-18 154800.jpg


Мы собрали почти все группы и осталось самую малость. Нам надо быстренько переплести друг с дружкой все предыдущие группы внутри новой группы под названием Cloth Carbon. Тут всё очень просто, поэтому даже объяснять нет смысла.

Screenshot 2025-04-18 155344.jpg


В конце втыкаем нашу группу Cloth Carbon в основной материал, настраиваем крутилки-вертелки по вкусу и получаем... стремного вида карбон.

Screenshot 2025-04-18 155856.jpg


Не, реально, фигня какая-т получалась... Пойду лучше в нейросетях сгенерирую...



684
Комментарии:3
по поступлениюВсе языкиТолько русский
41
3
хммм.....я начинаю думать, что автор разбирается в Блендере..))))))))
330
3
Сергей Помозков
19.04.2025 11:48
Платиновый спонсор
Взрыв мозга, но очень интересно) Спасибо за урок! Авось пригодится))
216
2
Вообще уважуха, и респектище, мне обычно лень столь подробно описывать создание такого сложного материала... Все равно половина прочитает по диагонали, и скажет " Ну это все понятно, но почему ваш материал ложится на мою модель неправильно, ивообще, все крутоболы юзают субстансепаитер так что это все нафигненужно")))