Найти тему

Чем отличается крутой 3D-дизайнер от посредственного? Гайд "Текстурируем шкаф"

Оглавление
«Освоить 3D-программы очень сложно, я не смогу с этим разобраться. Это что-то для очень технически подкованных. Я вроде везде разобрался, но ничего не работает. Чтобы начать пользоваться программой, нужно сначала досконально и полностью ее изучить. Я что-то нажал, и все исчезло».

Открою вам тайну: многие и даже не только начинающие специалисты не знают всех возможностей своих программ. Даже уже работающие в области люди периодически должны разбираться с новыми для них инструментами и смотреть туториалы. Поэтому не стоит стесняться отсутствия опыта. Моя задача сегодня — доказать вам на примере, что любая сложная задача может быть разложена на несложные шаги, описанные конкретным и простым языком. Как делают это наши кураторы для своих учеников.

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

Как я уже говорил, умение текстурировать — одно из ключевых навыков, которые вы должны демонстрировать в своем портфолио. Плохими текстурами можно испортить насколько угодно хорошо сделанную скульптуру.

Читайте другие мои статьи, чтобы знать больше.

Кто я? Читайте статью От рабочего завода до 3D-художника с зарплатой 300000р. Как геймдев может изменить твою жизнь

                      Из этого шкафа                                            мы сделаем это
Из этого шкафа мы сделаем это

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

Чуть не забыл:) Если вы не читали моих прочих статей, то у вас может возникнуть вопрос: «Кто я такой и чем я могу оказаться вам полезным?»

Сразу отвечу: меня зовут Тимур Наумов, и я действующий 3D-artist. Сейчас также уже шестой год преподаю: сначала три года обучал новичков в компаниях, а теперь учу в университете цифровых искусств Timart School, который основал вместе с еще несколькими своими друзьями.

Ну что ж, теперь, когда я представился сам и представил шкаф, погнали разбираться. Читайте внимательно — в тексте, помимо, собственно, самого гайда, будет подарок от нашего университета. Отдельное спасибо Вячеславу Юшину, который внес большой вклад в создание этой статьи.

Эта статья для тех, кто не любит лишних слов и уже немного разбирается в нашей области. Это мини-урок по текстурированию стекла на примере маленького шкафа. Как я уже говорил, умение текстурировать — одно из ключевых навыков, которые вы должны демонстрировать в своем портфолио. Плохими текстурами можно испортить насколько угодно хорошо сделанную скульптуру.

Подготовка геометрии

Первый и самый главный шаг — это правильная подготовка самой модели.

Сначала нам необходимо разбить нашу модель на несколько отдельных моделей и материалов. Разбиваем наш шкаф на 4 модели и 3 материала: стекло (Glass), деревянная основа (Wood) и металлическая ручка (Metal).

-2

На этом этапе необходимо убедиться, что модель имеет правильно составленную сетку и её «развертку». В дальнейшем это очень сильно повлияет на составление текстуры в целом.

Само текстурирование (рисование) будет происходить на развернутых участках модели. Потому что если шеллы будут хоть как-то пересекаться, касаться друг друга, то рисование текстуры одного шелла частично будет отображаться на другом.

-3

Импорт модели в Substance Painter

Далее переходим в программу Substance Painter.

Первым делом нам необходимо импортировать подготовленную модель. Наш пока весьма невыразительный шкаф разбит на высокополигональную модель (High Poly или HP), а также на низкополигональную (Low Poly или LP).

-4

При открытии окна нового проекта мы выбираем (Select) нашу низкополигональную модель и выбираем качество карты 2048. В остальном не кипишуем — все прочие значения оставляем без изменений.

Сразу после импорта модели видим, что наши материалы переместились в Texture Set List.

-5

Baking (запекание)

Baking, или же «запекание» (лайк, если пирожок захотелось), — процесс переноса неровностей, теней, шероховатостей и прочей детализации в виде текстурного набора карт. Переносится с высокополигональной модели "High Poly» на низкополигональную модель «Low Poly». Для запекания необходимо перейти в раздел Texture Set Settings и там выбрать Bake Mesh Maps.

-6

Нам необходимо создать первоначальный набор карт. Ставим значение в Output Size 2048 и выбираем нашу высокополигональную модель в окне High Definition Mesh.

-7

Далее мы выбираем карту Ambient occlusion.

В Texture set выбираем любой материал стекла. Допустим, Glass_Dit и выставляем ему параметры:

  • Igonre backface — By Mesh Name.
  • Self occlusion — Only Same Mash Name.
-8

Это означает, что модель стекла будет “запекаться” отдельно, не затрагивая Wood и Metal.

Те же самые значения мы ставим для другого стекла (Glass_Add). Если этого не сделать, то на стыке стекла и дерева образуются «артефакты», которые необходимо будет «пролечить».

-9

Внимание: функция запекания по мешам доступна в последних версиях Substance Painter.

После всех действий мы нажимаем на «Bake selected textures». В разделе Texture Set Settings сгенерируются карты, которые в дальнейшем мы будем использовать.

Текстура стекла

Собственно, то, ради чего мы здесь сегодня собрались:)

Начинаем текстурирование с выбора шейдера. Выбирается он в разделе Shader Settings. Для стекла выбирается pbr-metal-rough-with-alpha-blending. Этот шейдер позволяет настраивать прозрачность нашего стекла.

-10

После нам необходимо добавить канал Opacity. Этот канал добавляется для создания прозрачности стекла. Добавляется он во вкладке Channels через плюс «+».

-11

А теперь самое интересное.

  • Создаем новый слой (Fill layer) и называем его Base colour.
  • Отключаем в нем все каналы, кроме color. Здесь мы задаем цвет нашей пыли.
-12

Добавляем новый слой, называем Rough, отключаем все, кроме канала Roughness. Создаем на нем черную маску (нажать правой кнопкой мыши на квадрат). Поставим значение Roughness 0.4–0.3 в шкале.

-13

Нажимаем правой кнопкой уже на черную маску и добавляем Fill. В дальнейшем мы будем добавлять модификаторы именно этим методом, запоминайте.

-14

Уже в открытом Fill нажимаем на grayscale и выбираем Grunge Scratch Generator (генератор царапин, если по-человечески).

-15

Его модификатор должен быть Normal, интенсивность 100 %.

Создаем новый Fill, выбираем Grounge Dust Small. В настройках меняем на linear dodge (Add) и саму интенсивность Fill уменьшаем до 34 %.

Создаем новый Fill, выбираем Grounge Dust Spread. В настройках меняем на linear dodge (Add) и саму интенсивность Fill уменьшаем до 42 %.

Создаем новый Fill, выбираем Grounge Fingerprints Dirty. В настройках меняем на linear dodge (Add) и саму интенсивность Fill уменьшаем до 42 %.

Настройки linear dodge (Add) позволяют соединить вместе имеющиеся маски.

Создаем новый Fill, выбираем Shape Pyromid. В настройках меняем на Subtract (Sub) и саму интенсивность Fill уменьшаем до 35 %.

Создаем новый Fill, выбираем Shape Pyromid. В настройках меняем на Divide (Div) и саму интенсивность Fill уменьшаем до 35 %.

Shape Pyromid позволяет придать маске форму пирамиды.

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

Дальше создаем Filter и выбираем Sharpen.

Заключительный шаг на канале Roughness — это создание Anchor point (якоря).
Он необходим для сохранения настроек Roughness и передачи их на другие каналы.

Как будет выглядеть сам канал Roughness:

-16

Эти настройки можно менять по своим интересам, всячески тестировать в поисках понравившегося стекла.

Вот так будет выглядеть шкаф после Roughness.

-17

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

Вот так она должна выглядеть, как хтонический ужас:

-18

Маску необходимо редактировать для переднего стекла, удобнее это делать в 2D-виде.

  • Не забываем подгонять боковые ребра Shape Pyramid для создания логической линии пыли, которая скапливается на стыках стекла и деревянной рамки.
-19

Канал Opacity

Далее создадим новый Fill, назовем его Opacity и отключим все каналы, кроме Opacity. Выставим значение 0.2–0.1, создадим черную маску. В черной маске добавим Fill.

Заходим в Fill и в Grayscale/Anchor point и выбираем наш якорь Rough mask, который мы создали в конце Roughness слоя.

Опускаемся в Levels, нажимаем Invert (меняем цвет маске) и выбираем для себя оптимальный вид с помощью ползунков.

-20

Канал Heigh

Также отключаем все каналы, кроме Heigh.
Ставим значение «-» (-0.04–-0.05). Назначаем черную маску. На эту маску назначаем Fill, выбираем в grayscale наш «якорь».

-21

Создаем папку (Folder). В нее перемещаем наши три слоя (Heigh, Opacity, Roughness).

Далее добавляем Paint, делаем активную черную маску.

Выбираем Polygon fill. В открывшемся окне настроек ставим цвет белый, выбираем Mesh fill (закрашивание полигонов по геометрии).

-22
-23

Выбираем наше переднее стекло. И смотрим, чтобы цвет слоя был белый (черный цвет стирает).

Наше стекло разделено на 3 части (3 mesh: передняя, левая и правая, потому закрашивание происходит только по определенным частям, а не по всему стеклу).

Дублируем слой (Сtrl+D).

-24

Заходим в Paint скопированного слоя, ставим черный цвет (стирает маску) в Polygon fill и нажимаем на нашу переднюю часть стекла.

Переключаем на белый цвет и выбираем левую часть стекла (закрашиваем).

-25

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

Чтобы его подредактировать для нашего левого стекла, мы переходим в скопированном слое в слой Roughness и там редактируем Shape pyramid именно для левого стекла (в 2D-виде редактировать легче).

-26

Повторяем этот процесс для правой части стекла.

И можем настроить внутренние стекла. Уже на ваше усмотрение.

-27

На этом настройка стекла заканчивается и можем переходить к другим материалам.

А прежде разрешите вас пригласить на бесплатный ознакомительный вебинар от нашего университета — там я поделюсь опытом, как я начал зарабатывать в геймдев, какими путями можно в него попасть, и открою пару секретов по оформлению портфолио.
Буду рад вас видеть! И самые вовлеченные участники получат от меня другие полезные гайды по составлению продающего портфолио и 3D-анимации вашего персонажа.

Рекламная интеграция (вполне искренняя) есть — едем дальше!

Дерево

У нас имеется деревянная основа, в которой будет находиться наше стекло. Здесь все намного проще, чем со стеклом. Настроим стандартный материал дерева...

Все настройки, что мы производили, можно настроить на своё усмотрение.

-28

Металл

И наконец металл. Здесь по той же схеме, что и с деревом. Берем стандартный материал и настраиваем, как нам необходимо. Повторюсь, все настройки дерева и металла — это опциональные настройки.

-29

Экспорт текстур

На этом этапе мы будем экспортировать текстуры из Substance Painter для импорта в Marmoset.

Когда экспортируем металл вместе с деревом, можно использовать один пресет PBR Metallic Roughness.

-30

Параметры для стекла:

в настройках Output Templates необходимы такие карты, как Normal, Roughness, Opacity (Set Mask). По ним нужно выбрать также вид карт (например, RGB и так далее). В Normal выбираем DirectX либо OpenGL, в данном случае для Marmoset ставим DirectX.

В Roughness ставится Gray channel. Соответственно, карта Opacity переносится в в Set Mask и выбирается A Channel.

-31
-32
-33

И наконец перед экспортом материала стекла нужно не забыть поставить настройки Glass в Output template.

-34

Marmoset — программа для рендера, которая позволит нам показать наши текстуры во всей красе. Но у него имеются свои особенности. Настройки прозрачности (Opasity) регулируются настройками Add и Ditter:

-35

Цвет и интенсивность грязи мы регулируем в Albedo:

-36

-37

Готово! Наш пыльный шкафчик можно ставить в загадочную комнату. Надеюсь, этот урок был достаточно наглядным. В завершение хочу сказать: ничего не бойтесь! В любой программе можно разобраться, любые навыки можно получить. Особенно просто это сделать, если вы проходите структурированное и последовательное обучение у опытных наставников. Ни на что не намекаю, но у нас именно так.

Хватит тащить каменную глыбу разочарований как Сизиф! Приходите на наш бесплатный вебинар. Получите все, что нужно знать новичку. Вы сделаете свою жизнь приятнее, лучше и эмоциональнее. А я буду рад, что еще один ученик взойдет на пьедестал успеха. Я жду вас!

Ваши Тимур Наумов и Вячеслав Юшин