Операция "АнтиШов" ч.1 создание тайловой текстуры с помощью скульптинга

Главная Форумы Уроки по Blender Операция "АнтиШов" ч.1 создание тайловой текстуры с помощью скульптинга

В этой теме 4 ответа, 2 участника, последнее обновление alexknight alexknight 3 мес., 3 нед. назад.

Просмотр 5 сообщений - с 1 по 5 (из 5 всего)
  • Автор
    Сообщения
  • #13813
    alexknight
    alexknight
    Участник

    Всем здравствуйте. Всех выживших с прошедшим.
    Как-то давно я спрашивал на форуме как из 3д моделей сделать бесшовную текстуру, а точнее набор бесшовных текстур, но не получив и не найдя ответа… забросил эту тему и решил изучить другие аспекты блендера, но недавно снова решил заняться этим вопросом и ответы оказались весьма очевидны, лишь одно мне остается непонятно, зачем вы продолжаете читать эту воду с предисторией если и так понятно, что более-менее полезная информация начнется только с 2-3 абзаца. Такие вот дела.
    Итак, в этой теме(ну или нескольких) я постараюсь описать как можно больше способов как можно избавится от швов. На текстуре, при скульптинге, с помощью системы частиц и.т.д. Большинство способов я нашел сам методом проб и ошибок(и тыканьем на все что вижу) ), но на 100% уникальность не претендую.(в смысле не гарантирую что кто-то где-то подобное уже писал, я не нашел в свое время) черт, опять вода, да чтож ты будешь делать. В общем, все описываю первый способ.

    Убираем швы при скульптинге.

    Какого только бреда я не начитался пока искал этот способ, и через зеркало скульптить, и в pixplant’е за 150зелени карту высот редактировать(очень криво скажу я вам) и все в таком духе. Ну вот хлебом не корми дай себе жизнь усложнить, итак:
    Самый простой способ, который я нашел случайно, но он и самый полезный, просто бесценный.
    Запускаем блендер. Удаляем куб – создаем плоскость.
    Переходим в режим редактирования, нажимаем на магнит, чтобы привязать перемещения к сетке. Комбинацией shift+D дублируем нашу плоскость несколько раз чтобы получить вот такую картину:
    1
    Добавим к плоскости модификатор Multiresolution с параметром simple и нажмем subdivide несколько (сколько нужно) раз. Перейдем в Sculpt Mode и на левой боковой панели скролим в самый низ до пункта symmetry/lock и выключим mirror по иксу(и по игреку и зету тоже если включено, один человек предлагал с помощью зеркала скульптить бесшовную текстуру, смех да и только) далее на пункте lock отметим кнопки “x” и “y” чтобы плоскость по краям не съезжала(dyntopo тоже не любит края поэтому используем Multiresolution). Теперь на пункте Tiling снова отметим “x” и “y”, однако сейчас тайлится наша плоскость 2 раза, т.е. повторяется через половину нашей плоскости, вот так вот:
    2
    И для скульптинга некоторых поверхностей это даже полезно, но нас интересует нормальный тайлинг поэтому переходим к пункту tile offset и задаем значения для “x” и “y” по 2. Получатся вот такие параметры:
    3
    Вот собственно и все, можно очень удобно скульптить не боясь нарушить тайлинг.


    Пример сделанный по этому принципу:

    Простой способ? Но я не понимаю, почему интернет переполнен какими то танцами с бубмном и в блендере и в зебраше, а этого нигде нет.

    #13820
    alexknight
    alexknight
    Участник

    Прежде чем приступить ко второму способу, хотелось бы немного добавить к первому.
    Если очень хочется использовать dyntopo(Динамическая топология), то алгоритм действий следующий:
    Создаем плоскость – нажимаем S, 3, enter. Далее комбинацию клавиш ctrl+A и выбираем пункт Scale, переходим в режим скульптинга и включаем динамическую топологию, а далее настройки как в самом уроке. Динтоп все еще будет “съедать” края плоскости, но центральную часть с которой будет запекаться текстура это не затронет.
    А теперь о втором способе:

    2.Тайловая текстура с помощью системы частиц.

    Вполне себе очевидный урок до которого я додумался как только подумал о такой возможности(ну то есть после того как я поигрался с системой частиц и пришла подобная идея). Однако недавно я наткнулся на отличный видео-урок по данной теме GAME ASSET TUTORIAL – Tileable dirt texture stym stym из которого я узнал пару новых трюков. на канале автора еще масса подобных полезных уроков, рекомендую ознакомится, уроки на английском, но это нисколько не мешает восприятию. Поэтому я не буду поэтапно расписывать что и как делается, если нужен пошаговый подробный урок добро пожаловать на youtube. Я лишь распишу суть для тех кому не нужно смотреть 14 минут шаг за шагом, а хватит и небольшой идеи чтобы понять и использовать, а заодно может быть и дополню его урок.
    Итак представим(или создадим), что на нашу плоскость с которой мы должны запечь пачку текстур, просыпалась горстка сюзанн.
    1
    Что в таком случае будет проблемой для тайловой текстуры? Конечно же те Сюзанны, которые выходят за края плоскости, если запечь такую плоскость, то на одной стороне текстуры сюзанна будет, а на другой нет, что собственно и будет создавать швы.
    3
    Решение этой проблемы достаточно очевидное, мы можем продублировать нашу плоскость с сюзаннами(далее просто объект, очень много сюзанн) и тогда объект который выходил например за правый край плоскости окажется и на левом.
    Расположим дубликаты вокруг плоскости следущим образом:
    34
    И в итоге получим бесшовную текстуру с объектами(например, мусором на земле, камнями, травой и прочим).
    В видео-уроке ссылку на который я давал выше урок описан на примере камней на земле(включая дальнейшую обработку текстур) и там он комбинирует систему частиц с модификатором Displace с процедурной текстурой облаков. О бесшовных процедурных текстурах не только облаков я поговорю позже в третьей части, а пока хотел только немного дополнить его урок.
    Он дублирует плоскость с примененными модификатормами Subdivision surface и это порождает море лишних полигонов особенно при высоких значениях и детализированных объектах в системе частиц, что может усложнить работу.
    Subdivision и Displace могут быть применены только к центральной плоскости, потому что только она одна сообщает рельеф запекаемой текстуре, остальные плоскости могут быть безболезненно удалены, самое главное чтобы на своих местах остались объекты частиц.
    Порядок действий будет таким:
    Создаем плоскость, добавляем систему частиц, настраиваем, на вкладке модификаторов нажимаем convert, чтобы объекты системы частиц превратились в обычные объекты, удаляем систему частиц, выделяем полученные объекты без плоскости нажимаем ctrl+j чтобы объединить объекты, далее выделяем объект вместе с плоскостью располагаем дубликаты нужным описанным выше образом и применяем нужные модификаторы только к центральной плоскости, остальные можно просто удалить. В итоге мы сэкономим очень много полигонов.
    321

    #13821
    alexknight
    alexknight
    Участник

    3. Процедурные бесшовные текстуры.

    Последний из основных приемов создания тайловой текстуры из 3д объекта, которые мне удалось найти. Процедурная текстура это самый ленивый способ создать рельеф, но от этого он не становится менее полезным, особенно в комбинации первых двух. (например для быстрой детализации камней в примере к первому уроку я применил Displace c текстурой облаков).
    Однако к сожалению укротить процедурные текстуры в самом блендере мне так и не удалось, поэтому для их создания будет использовать сторонние утилиты.
    1. Gimp – способ я подсмотрел в видео-уроке из второго способа. Суть его проста запускаем Гимп, выбираем пункт меню “Фильтры” – Визуализация – Облака – Разностные облака. откроется окно с параметрами с которыми можно поиграться, но нас интересует самая главная галка “Мозаичный”
    32
    Она сделает нашу текстуру облаков бесшовной. Полученную текстуру можно будет использовать точно так-же как и текстуру облаков из блендера, только эта текстура не будет создавать швы.
    Однако одних облаков маловато будет. В гимпе есть еще несколько фильтров которые могут генерировать бесшовные текстуры, которые так-же располагаются в разделе Визуализация. Но более менее интересные это Синус, Лабиринт и Шахматная доска, но они не заменят процедурных текстур блендера. А поэтому плавно переходим ко второй утилите.
    2. NeoTextureEdit ссылка на программу
    Вот то, что заменит нам процедурные текстуры блендера и даже больше. Собственно из названия программы понятно, что это редактор текстур, но на самом деле это генератор текстур.
    312
    Вот так выглядит интерфейс программы, верхняя центральная часть представляет собой редактор нодов похожий на редактор из блендера. нижняя предпросмотр текстуры(тектсур) на 3д объекте. Слева параметры нодов, справа как я понял готовые примеры. При запуске программы у нас по умолчанию уже открыт пример кирпичной стены, не спешите его закрывать, поиграйтесь с нодами, а я пока коротко опишу основные функции.
    Для добавления нового нода нужно на пустом месте нажать ПКМ(правую кнопку мыши). Откроется контекстное меню, первая половина пунктов это процедурные текстуры и цвет(розовая превьюшка). Вторая половина это фильтры(операции) доступные с текстурами(смешать, смешать по маске, размыть и.т.д.) чтобы соединить ноды нужно тянуть линии от точек, существует 2 типа красные – выходные, зеленые – входные. Например на фильтре “Mask” три зеленые точки вверху (первое изображение, второе изображение, маска) и одна красная внизу (выходной результат).
    Каждый нод можно экспортировать в виде картинки, что очень удобно если маски нужно получить отдельно. Для этого на нужном ноде нажать ПКМ и выбрать Export Image – там есть параметры с заданными разрешениями текстур, если нужна текстура своего разрешения, то выбрать specify где можно будет в цифрах задать разрешение.
    Так-же можно сгенерировать карту нормалей для этого нужно добавить фильтр filterNormalMap и подключить к нему нужный нод.
    Для того чтобы назначить на превьюшку какие текстуры за что отвечают, нужно нажать на любом(нужном) ноде ПКМ навести мышь на пункт OpenGL, а выбрать нужный set as, диффузия, нормали, отражения, высота.
    Текстуры на выходе будут бесшовными, а значит если применить такую текстуру например на модификаторе Displace, а потом полученный рельеф запечь, полученная текстура будет тоже бешсовная, самое главное выбрать в параметр модификатора Direction как Z(т.е. выдавливать объект только по оси Z(вверх))
    321

    Фух, вроде все. Рассказал (Пусть и коряво немного) о трех самых главных(из найденных мной) способах получения бесшовных текстур и бесшовного рельефа. Есть еще узконаправленные способы, например создание кирпичной стены, но о них если и напишу, то много позже. Надеюсь, что уроки были полезными для вас и я не зря старался. Всем удачи!

    #13822
    Артем Слаква
    Артем Слаква
    Хранитель

    Добавлю ссылочку на одну тематическую тему. Думаю не помешает :)

    #13823
    alexknight
    alexknight
    Участник

    Пусть будет, но урок уж сильно перемудреный.
    Достаточно увеличить UV развертку у плоскости на 2 и все можно рисовать бесшовную текстуру, или убирать швы у текстуры с помощью F_clone, что полезнее)
    312

Просмотр 5 сообщений - с 1 по 5 (из 5 всего)

Для ответа в этой теме необходимо авторизоваться.


О сайте

На данном сайте Вы сможете найти множество уроков и материалов по графическому
редактору Blender.

Контакты

Для связи с администрацией сайта Вы можете воспользоваться следующими контактами:

Email:
info@blender3d.com.ua

Следите за нами

Подписывайтесь на наши страницы в социальных сетях.

На сайте Blender3D собрано огромное количество уроков по программе трехмерного моделирования Blender. Обучающие материалы представлены как в формате видеоуроков, так и в текстовом виде. Здесь затронуты все аспекты, связанные с Blender, начиная от моделирования и заканчивая созданием игр с применением языка программирования Python.

Помимо уроков по Blender, Вы сможете найти готовые 3D-модели и архивы высококачественных текстур. Сайт регулярно пополняется новым контентом и следит за развитием Blender.