Создание бесшовных текстур методом "запекания бублика"

Вопросы по работе с Blender 3D, моделирование, экспорт, расширения.
Правила форума
Читайте Правила общения
Ответить
Аватара пользователя
Forcerat
Новичок
Сообщения: 2
Зарегистрирован: 04 июн 2020, 19:00
Благодарил (а): 1 раз
Поблагодарили: 2 раза

Создание бесшовных текстур методом "запекания бублика"

Сообщение Forcerat »

Всем привет! Я хочу вам показать способ создания бесшовных текстур - «запекание бублика». Почему бублик? Просто, когда щупал возможности метода, он вышел очень вкусным… но был тогда так далёк…
Но речь сегодня не о нем… :D
Ранее я пользовался методом клонирования объектов на плоскости (автор – Артем Слаква), который оказался очень удобным для создания текстур, к примеру, каменной кладки на стене дома, тропы из камня, черепицы, досок на полу. А в планах далее маячила кора… и тут, мне стало неясно, как же её сделать по данному методу, ведь очень сложно создать каждую разную чешуйку из всего многообразия в коре. Одно дело – кора сосны, тут можно извернуться, а как на счет, например, коры секвойи? Да к тому же динамическая топология потребляет очень много ресурсов компа + запекать все текстуры долго, а результат не всегда радует глаз + если очень сильно накосячил с топологией, чаще всего уже ничего не переделать (т.к. надо применять модификатор «Decimate» и в дальнейшем будут помехи в сетке для правки).

Я вспомнил о двух вещах, которые я видел на Youtub-е: тор для запекания бесшовных процедурных текстур и модификатор «Multires». Тор позволяет зациклить результат работы в текстуре со всех сторон, а модификатор – делать детализацию легче, ускоряет запекание текстур, а также позволит легко вносить любые правки без искажений и артефактов.
Заранее уточну следующее 8-) : вот что я буду иметь в виду под вертикальным и горизонтальным радиусами тора:
5н.png
а стрелочки указывают на ход текстуры соответственно сверху вниз, и слева направо.
UPD! Создавайте тор с соотношением чисел подразделений по вертикали и горизонтали 1 к 8; или 1 к 4 с увеличением вертикального радиуса вручную в 2 раза в режиме редактирования.
Поставил модификатор с подразделением при предпросмотре "7" (чем больше будет, тем более мелких деталей вы сможете добавить), заскульптил под кору. Далее для проверки запек карту нормалей, настройки показаны на фото:
предпросмотр.png
3.png
Для небольшого ускорения запек там же карту смещения, использовал в связке нодов для базисного покраса, смешал с текстурой, добавил немного деталей.
Результат можно получить примерно следующий:
итог.png
Теперь подведем итоги ;):

Достоинства метода «запекания пончика»:
1. Текстура получается абсолютно бесшовной, особенно это прекрасно при покраске модели процедурным методом (что например, не очень удачно получается по методу Артема Слаквы без разделения клонируемого объекта);
2. Скульптинг не сжирает много оперативной памяти, т.к. Multires более оптимизирован для скульптинга, чем Dinamic Topology; + возможность использовать уровни детализации + не обязательно использовать симметрию, т.к. тор полностью зациклен по всем осям; (симметрия по двум осям сразу + динамическая топология скульптингом на плоскости, на моем ведре несколько ниже среднего уровня использовать было нерально);
3. Карты нормалей и смещения запекаются моментально и в хорошем качестве (рекомендую делать при включенном уровне подразделении в режиме предпросмотра "1", текстура становится абсолютно сглаженной и красивой), экономия времени для подготовки текстур к экспорту;
4. Нет необходимости запекать остальные карты (если создаете их процедурно, то в таком случае во время запекания галочку «Bake From Multires» убирайте), а текстуры красятся прямо по HighPoly-мешу без промахов;
5. Использовать необходимо лишь один объект, а не множество со всеми требуемыми связками и пр.;
6. Предполагаю, что итоговая текстура идеально будет ляжиться на любую круглую или гладкую поверхность;
7. Если что-то пошло не так, всегда можно довольно быстро подправить топологию и улучшить результат (в отличие от динамической топологии).

Недостатки метода:
1. Искажения в масштабе по Y-координате в текстуре из-за разницы радиусов (в 8 раз, если точнее вертикальный радиус меньше горизонтального), хоть это и можно сгладить, если в режиме редактирования вручную увеличить радиус по вертикали в 2 раза и учитывать это искажение при скульптинге, что иногда бывает сложно;

UPD! Для удобства скульптинга можно повернуть UV-координаты на 90 градусов, тогда горизонтальный радиус будет Y-осью, а вертикальный - X-осью. Что удобно, например, для создания текстуры досок, т.к. их длина будет по горизонтальному радиусу тора лежать...

2. Скульптинг нужно проводить вручную (поэтому ускоряйте, как сможете, например, с помощью текстур для кистей) – не делайте детали слишком мелкими, особенно если вы запекаете в разрешении 1К, вы их не запечатлеете (почему см. пункт 3);
3. Красить тор вручную при необходимости создания текстуры в разрешении 1К нецелесообразно, т.к. разрешения текстуры тупо не хватает, но этого можно сгладить, если делать полуавтоматическим способом (совмещая с процедурной покраской); в противном случае создавайте текстуру в разрешении минимум 2К;
4. Метод не получится использовать, если вы хотите сделать текстуру по типу скрещенных между собой досок, наложенных друг на друга камней, множество мелких камушков (с последним вообще намучаетесь, но теоретически возможно сделать всё, особенно, если камушки делать крупнее);
5. Если потребуется создать супердетализированную поверхность (которую может обеспечить лишь динамическая топология), данный метод может вам не подойти (но для большинства задумок вполне хватит);
6. Этим методом нельзя создать бесшовную текстуру с альфа-каналом, т.к. тор – цельный объект (правда, для коры это скорее плюс, чем минус; но создать листву без земли под ней не получится); - но если есть идеи по этому поводу пишите ;)
7! Проблема запекания "высоких" поверхностей при числе подразделений при предпросмотре "1", карта нормалей запекается частично, т.к. изменяется геометрия; но если поставить "0" - тогда возникают артефакты из-за несоответствия формы изначального тора и сглаженного.
Решение: создавайте тор с соотношением подразделений 10 к 40 (с увеличенным в 2 раза в режимом редактирования вертикальным радиусом) или 10 к 80, запекание карт тогда можно производить при подразделении в предпросмотре "0" без артефактов.

8. И, наверное, самый главный недостаток – количество затрачиваемого времени для создания текстуры.

Надеюсь, что данная статья оказалась для вас полезной. Пробуйте, дерзайте, творите красивые текстуры… Спасибо за то, что уделили ей время и… удачи Вам!!! :D


P.S.: Текстуры во вложении вы можете использовать свободно, если они вам пригодятся
Вложения
Карта Смещений текстуры коры
Карта Смещений текстуры коры
Карта Нормалей текстуры коры
Карта Нормалей текстуры коры
Карта Цвета текстуры коры
Карта Цвета текстуры коры
Последний раз редактировалось Forcerat 18 авг 2020, 19:07, всего редактировалось 2 раза.

Аватара пользователя
SkanerSoft
Администратор
Сообщения: 166
Зарегистрирован: 23 май 2020, 20:08
Откуда: Питер
Благодарил (а): 23 раза
Поблагодарили: 61 раз
Контактная информация:

Re: Создание бесшовных текстур методом "запекания бублика"

Сообщение SkanerSoft »

Ого! Отличный способ, попробую его! Спасибо!
Автор и ведущий канала Godot 3D Russia

Ответить