Как сделать карту нормалей в 3d max

Добавил пользователь Morpheus
Обновлено: 31.08.2024

S_V_E_N
> Вменяемых видео уроков в интернете не нашел.
>
Да ну. не верю.
> Как научились запекать текстуры для лоу поли, особенно нормали?
В два клика :) , точнее в три.

Да ну, это совершенно не серьёзно:( Куча, просто куча уроков на ютуб. Хотя соглашусь на русском либо долго либо не информативно. На инглишь всё доступно объясняют. Сам точно уже не помню, как там запекать. Короче вызываешь рендер по текстуре, там выбираешь лой и хай поли модели для запекания, выбираешь какие карты нужно и печёшь. Только перед этим надо долго прыгать, чтобы назначить регион пересечения моделей по которому будут запекаться карты.
И поэтому не парся с максом. Не знаю, как он, а Майя не всегда печёт корректно. Есть другие проги, которые делают это лучше. И самый известная и доступная Xnormal.
Обязательно ли для этого проходить платные тренинги - ну если котелок не варит до такой степени, то да - это единственный вариант.

Den_Guding
То что ты говоришь это понятно. я запекал тени много раз. Но так и не понял толком как печь нормал мап.
Как я понял это должна быть картинка с синим фоном, у меня она серая почему то.
Много непонятного.
Должен ли быть обязательно формат тга?
Пользуются ли белые люди 3д максом для получения хороших нормалей? или для качественного результата нужны другие программы?
Какие должны быть настройки рендера, печет ли вирей?
Должен ли корректно работать бамп в рендере макса?
Почему запекая текстуру рендер так же видит лоу поли модель и они накладываются? (я решал этот вопрос, делая лоуполи прозрачным, но в видеоуроках ни у кого не было такого).
Нужен ли свет для нормал мапа?
Каким форматом импортировать нормал мап в движки?

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

S_V_E_N
> По этому обращаюсь к знающим людям, надеюсь услышат.

3ds Max Official Help Technician Manual Reference .

search - texture baking .


Изображение


1 создать детализированую, с высокой степенью детализации модель хай-поли.
2 создать простую , с низкой степенью детализации модель лоу-поли.

(есть две штуки модели . хай модеь. лоу модель.)

лоу модель должна быть основной формы и контурами подобная модели хай поли , и обычно модель лоу масштабом чуть меньше чем хай модель , так как проецируемая детальность в хай-поли модели будет покрывать сверху эту форму .

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

3 выберите лоу модель .

(тут надо кнопкой селект select выделить и выбрать лоу модель в сцене 3д)

4 выбрать меню рендеринг-плавающее меню- рендер в текстуру . Rendering—- Render to Texture .

откроется диалоговая панель _рендеринг в текстуру_.

5 В менюшке Objects to Bake (roll out - разворачивающаяся по кнопке _вниз_ панель меню ) . такая типа стрелка вниз,её нажать, менюшка поплывет вниз на разворот панели ,эта штука называется ролл-аут-панель .

в группе Projection Mapping (проецирование карт) нажать кнопку Pick (указать,взять,выбрать)
3ds Max откроет панель диалога выбора

6 Выбрать модель хай-поли и потом нажать кнопку Add (..добавить..)

3ds Max применит модификатор __Проецирующий модификатор__ Projection Modifier __ на модель лоу-поли

7 В группе Projection Mapping Group (..Группа проецирования карт. ) включить кнопку on . (такая типа квадратик и птичка ,галочка vv в поле с записью on , эту штучку надо отметить птичкой - оно включится)

8 в панели Output RollOut ( панель вывода) добавить элемент NormalMapsElement .

в позиции Target Map Slot (слот целевой карты ) выбрать Bump .


. то есть техника бамп кодирование цветности , темные зоны вверх выпукло ,светлые зоны вниз впадины , информация RGB нормалей от модели хай поли будет пересчитываться и заноситься в канал карты Bump модели лоу поли.

9 в менюшке Selected Elements Unique выбрать Output Into Normal Bump.

включить галочку , . вывод в карту нормали.

10 .Click Render.

3дс макс отрендерит карту нормалей , которая сохранит данные от нормалей хай-поли объекта . это создаст материал Shell Material и назначит его на объект лоу-поли , в котором карта нормалей будет введена в канал карт Bump .

. это где назначение материалов material-map browser каналы карт в материале diffuse specular opacity и тд , там в карте bump материала лоу-поли появится запеченая карта нормалей от объекта хай.

Den_Guding
> то да - это единственный вариант.

S_V_E_N
> Почему запекая текстуру рендер так же видит лоу поли модель и они
> накладываются?


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

механизм подобен как бы прожектор света освещает любое тело.

хай модель как типа обертка . от своей поверхности излучает лучи на поверхность лоу поли .эти лучи должны покрывать лоу модель , по схеме луч попал—-луч отразился создается кодирование нормали .(интенсивность цвета rgb в точке встречи луч-поверхность ставит в соответствие систему координат тела x y z . red=x , green=y , blue=z )

S_V_E_N
> Должен ли быть обязательно формат тга?

вроде назначается автоматически в связи с моделью оптики света (яркость прозрачность цвет-тон интенсивность ). кажется из за присутствия прозрачности выводится в tga обязательно принудительным порядком .(потом можно переконвертировать)


S_V_E_N
> Пользуются ли белые люди 3д максом для получения хороших нормалей?
да.

S_V_E_N
> Какие должны быть настройки рендера, печет ли вирей?
см описание .

S_V_E_N
> Должен ли корректно работать бамп в рендере макса?

в бамп-канал материала созданного на лоу-поли записывается карта нормали от объекта хай поли .
ты этот бамп не создаешь сам .он создается алгоритмами и схематикой в соответствии с материалом который висит на объекте хай-поли.


S_V_E_N
> Нужен ли свет для нормал мапа?

конкретно именно для нормал мапа не нужен .

этот свет это как обычный свет на объект при создании базового тела хай-поли .

если хай поли с нанесенным материалом и фактурой и находится под светом который дает блики тени блески мутность на тело хай-поли , то все эти блики тени яркость цветность на объекте хай поли будут учтены при создании нормал.


S_V_E_N
> я запекал тени много раз. Но так и не понял толком как печь нормал мап.


скорее всего ты назначал целевой слот не тот и не туда и не в то место , то есть ты мог назначать output как diffuse (вывод —- диффуз карта ), target цель - диффуз . то есть вывести это как диффуз (общий), назначение цели-диффуз общий.

надо конкретно именно выбирать слот цели —- бамп слот target slot - bump , слот вывода — карта нормали output- normal map. (см пост выше).

S_V_E_N
> Пользуются ли белые люди 3д максом для получения хороших нормалей? или для
> качественного результата нужны другие программы?
Слыхал, что народ особо не в восторге, может исправили, не знаю.

Ну посмотри мои примеры, может поможет.

Запустить видео по клику - Как делать игры

Запустить видео по клику - Как делать игры

3д максом для получения хороших нормалей? или для качественного результата нужны другие программы?

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

но бывают конечно случаи с собственными движками которые тесно интегрированы с каким то пакетом и используют аналогичное тангенс пространство.

Реалтаймовые движки используют в основном Tangent Space нормали, если че.

space | Запекание Normal Map в 3DsMax

By default, the texture type is Targa

по умолчанию автоматически ставит tga . см там справа кнопочка вниз и выплывающий список форматов jpg, bmp, и тд. в панели сохранения save as.

когда на объект назначит модификатор Projection . проекция.

справа панель модифай .

AutoMatic Flattern UVW
Projection
Объект лоу поли

список иерархии модификаторов на объекте лоу поли.

надо спуститься вниз на Projection .

на плюс раскрыть список элемнтов модификатора проекции .

выбрать кейдж Cage

это контейнер который проецирует испускание лучей вокруг объекта .(такая синенькая сеточная оболочка вокруг тела 3д-объекта)

см параметры push , amount , -————- выдавить, величина .

этот контейнер надо настраивать так чтоб он своей синей кейдж оболочкой обволакивал оба тела и лоу поли и хай поли . это типа как локальная зона в которой проходит запекание рендер в текстуру (в отличие от рендера вообще всей сцены).

эти испускания лучей и формирование карт нормалей проходят внутри модификатора projection в контейнере кейдж cage и когда этот процесс закончится после этого проходит автоматическое назначение UVW системы на лоу тело -————— AutomaticFlatternUVW

cкорее всего все это мероприятие сбивается из того что все кто смотрят видео уроки и повторяют три кликанья кнопок не знают в чем суть дела , а профессионалы создания видео уроков об этом умалчивают .

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

конкретно XNormal и прочие топоганы не пользовал , есть подозрение что там эта настройка оптимального контейнера кейджа запрограммирована автоматически и проходит некая схема автоподстройки контейнера в отличие от родной зашитой технологии 3дс макса где это
надо настраивать при этом усиленно напрягая процессы мышления и вещества головного мозга

1 две модели . верхняя хай —- 57к . нижняя лоу 4к. сумма около 61к.

Изображение


выделили лоу , нажали render to texrure

Изображение


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

модели называются KORPUSLOW корпус лоу 4к и KORPUSHI корпус хай 57к (копия , стандарт тесселяция , квадро) .

выбираем модель хай .

здесь следуем по методике 3ds Max Official Help Technician Reference техническое руководство по использованию изделия 3дс макс .

Изображение

4 включили enable активное .

появился модификатор проекционных лучей Projection и та самая штука синяя обволакивает модель .

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

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


Изображение

5 выбираем конкретно слот — карта нормали Normal Map

Изображение

6 выбираем слот цели — канал бамп .

Target Map Slot——-Bump


Изображение

7 спускаемся в стеке модификаторов для настройки контейнера кейдж .

выделяем модификатор Projection , нажимаем на плюс чтоб открыть дерево подчинения . выбираем меню Cage - это выбор всего контейнера управления (еще доступно управление вершинами vertex и гранями face .это принадлежит конкретно именно контейнеру
кейдж а не объекту тела 3д).

делаем сброс - кнопки управления push- вытолкнуть , amount -величина , reset сброс и авто подстройка под контур тела 3д.

нажимаем reset автоподстройка контейнера кейдж под тело 3д .

см предыдущие (было рваное , сейчас на этом этапе равномерно стабильная оболочка вокруг тела )

Изображение


8 теперь контейнер кейдж подогнанный под форму тела 3д масштабируем равномерно так чтоб контейнер обволакивал 3д-тело , правая мышка клик - плавающее меню— scale — offset scale относительный масштаб всего объекта (кейдж надо выбрать и взять в захват как подчиненный объект модификатора) ,+10процентов +15процентов и тд ,

при том тело лоу-поли нижнее было move rotate scale сдвинуто и масштабировано масштабом чуть меньше чем тело хай-поли ,(см предыдущие посты ,описание техники текстур-бэйкинг ,перевод технического руководства по использованию изделия 3дс макс ).

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


Изображение

9 настройка системы проведена , теперь делаем запечку текстур ,то самое событие которое называется текстурэ-бэйкинг texture-baking


Изображение


по умолчанию это вывод в формат tga , выводит в папку пользователя компьютера , по адресу ___________Диск С : Пользователи __имя пользователя системы__ : Мои Документы : 3ds Max : scene assets : images

этот путь вывода и формат вывода можно изменить в настройках меню Render to texture и save as , нажмите на правые _стрелочки вниз_ для разворота меню панелей .

A normals map is a three-color map, unlike the grayscale maps used for regular bump mapping (see Bump Map). The red channel encodes the left-right axis of normal orientation, the green channel encodes the up-down axis of normal orientation, and the blue channel encodes vertical depth.

Рик, спасибо, но то что ты пишешь и показываешь я всё давно знаю.
Мне нужно устно объяснять. Где то есть косяк и я не могу его найти самостоятельно.
Готов заплатить 300р за каждый час занятий по скайпу.


скорее всего ты кликаешь кнопки и менюшки , при этом Projection cage не настроен так как положено.

лоу поли модель не надо ставить свойства объект прозрачный .

оно обязано быть и лоу и хай под охватом контейнера кейдж.

push - отодвигает границы кейджа в единицах сцены (как ты ставил сцену 1ед сетки = 1 мм 1см 1м 1км и тд)

percent - условно база это охват кейджем при резет - это 100процентов ,потом наращивает в доле процентов от базы .

tolerance допуск - это отступ оболочки кейджа от тела , меряет в единицах сцены 1см 1дм 1м 1км как установлено в customize-present - unit scene setup —- 1unit= мм см дм м км парсек дюйм фут ярд и тд.


назначение слотов обязано быть output normal map, target slot- bump .

эти мелкие кнопочки и галочки vv on, enable не пропускай .мог не нажать ,не включить .

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

Есть несколько способов создать/имитировать рельеф в 3dsMax:

  1. Моделирование
  2. Bump maps
  3. Diffuse maps
  4. Normal maps
  5. Displacement

Рассмотрим их все по порядку, случаи их применения, плюсы и минусы:

1. Моделирование

Несомненные плюсы реальной геометрии: корректный абрис объекта (Рис.1.B). и корректная тень (Рис.1.С). Создание рельефа с помощью моделирования является предпочтительным способом с точки зрения получения качественного продукта на выходе. Однако же при достаточной детализации возрастает и количество полигонов в модели, что значительно увеличивает время просчета изображения. Поэтому часто используют альтернативные способы.

2. Bump maps

Разумеется, с применением карты абрис объекта не меняется (Рис.2.В) (и характер тени, конечно). Следовательно применять Bump лучше на моделях среднего плана. Поэтому же не следует иммитировать bump-картами слишком большие перепады рельефа (это лучше предоставить реальной геометрии). Сцены с картами Bump визуализируются значительно быстрее, чем с реальной геометрией.

Bump-карты могут существенно изменить внешний вид материала, а значит и сделать его интереснее. На Рис.3 все материалы созданы с использованием bump-карт.

Необязательно использовать только рисованные (или фотографические) Bump-карты. Вполне неплохих результатов можно добиться комбинируя стандартные процедурные карты доступные в 3ds Max - Рис.4.

3. Diffuse maps (Диффузные карты)

Взгляните на рисунок Рис.5. Между изображениями A и B почти не видно разницы. Тем не менее на рисунке Рис.5.А изображен материал только с диффузной картой (непосредственная окраска поверхности), на рисунке Рис.5.B к диффузной карте добавляется Bump-карта для формирования микрорельефа.

В трехмерных сценах часто случается такое (особенно это характерно для ровных гладких протяженных поверхностей), что для имитации свойств поверхности достаточно одной диффузной карты, с нарисованными характеристиками рельефа (трещины, вмятины, царапины и т.п.). Особенно это актуально для дальних планов, а при некоторых ракурсах даже для средних.

Однако для криволинейных поверхностей (особенно, если они отражают) bump-карты усиливают свою роль в формировании материала. На Рис.6.В. действие bump-карты очень заметно, а значит применение ее оправдано.

4. Normal maps (Карты нормалей)

В своей физике карты нормалей сходны с bump-картами. Отличие состоит в том, что карты Bump строятся на основе двух измерений (по шкале от черного до белого), а Normal во всех трех. Поэтому карты нормалей выглядят немного необычно (Рис.7).


Рис.7 (Автор рисунка: Cory Sponseller)

Карты нормалей очень активно используются в играх, так как позволяют существенно сократить количество полигонов, почти не потеряв в детализации модели. На Рис.8.А изображена низкополигональная (!) модель (700 полигонов), на Рис.8.В карта нормалей соответственно.


Рис.8 (Автор рисунка: Buddikaman)

Карты нормалей не очень требовательны к ресурсам, благодаря современным видеокартам.

5. Displacement (Смещение геометрии)

Displacement является некоторым симбиозом реальной геометрии и имитации рельефа с помощью карт. С одной стороны, мы не моделируем вручную рельеф поверхности, а используем карту. С другой стороны мы имеем на выходе реальную геометрию, а не имитацию.

Для Displacement используют черно-белые карты высот (точно такие же как и для Bump).

Displacement целесообразно использовать там, где при ручном моделировании вы потеряете очень много времени в виду сложности сетки. Задачи, которые можно решить с помощью Displacement чрезвычайно широки: горы, протекторы автомобильных шин, сложные фактуры пола и даже трава и махровое полотенце. И конечно многое другое.

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

Что же выбрать? Боюсь, что дать однозначный ответ здесь невозможно. Для каждой задачи вам понадобится свой способ формирования рельефа. И возможно, что в одной сцене вы используете и bump, и displacement, и normal; что-то сделаете реальной геометрией, а какая-то модель останется довольствоваться диффузной картой.

Как использовать карты микрорельефа в 3ds Max?

Если с честным моделированием все более-менее понятно, то как поступить с картами Bump, Diffuse, Normal, Displacement? Как заставить их работать?

Почти все карты (процедурные и растровые) в 3ds Max помещаются в специальные слоты (каналы). Слоты для материалов можно найти в Map Editor (Редактор материалов – горячая клавиша M) на свитке Maps (Карты) – Рис.10.

В зависимости от того, с каким типом материала мы в данный момент работаем, список карт будет меняться. На Рис.10 мы можем видеть карты для материала типа VrayMtl (материал используется с визуализатором Vray). Левый столбик свитка содержит названия карт. Самые часто используемые карты:

  • Diffuse (Диффузная – непосредственная окраска объекта, его фактура)
  • Reflect (Отражение – сила отражательной способности материала)
  • Refract (Преломление – насколько сильно материал преломляет свет)
  • Glossiness (Глянцевитость – сила размытия блика на поверхности)
  • Bump (Микрорельеф – карта неровностей поверхности)
  • Opacity (Непрозрачность – управляет прозрачностью объекта)

Правее названий карт располагается столбик с окнами-счетчиками, где можно указать силу действия карты на выбранный параметр. Большинство карт используют значения от 0 до 100, но встречаются исключения, например Bump позволяет задавать числа от -1000 до 1000. Галочка после окна-счетчика позволяет включить/исключить действие карты на материал.

Если в слоте не указана какая-либо карта, то слот содержит надпись None (Пусто). Если карта добавлена, то слот меняет свое название на имя карты – Рис.11.

Добавить карту можно, щелкнув по слоту левой кнопкой мыши и в открывшемся списке выбрав требуемую, нажать ОК. Если карта выбирается растровая (Bitmap), то после необходимо указать в диалоговом окне путь к растровому файлу. Удалить карту из слота не сложнее – правая кнопка мыши по слоту, выбрать в контекстном меню команду Clear (Очистить) или Cut (Вырезать), в последнем случае карта при удалении будет помещена в буфер.

Итак по порядку.

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

С диффузной картой дело обстоит точно также как с картой Bump. Только слот следует использовать Diffuse. Это по сути самое простое текстурирование объекта – просто окрашивание его в какой-то рисунок.

Также можно поместить карту в слот модификатора VrayDisplacementMod, предварительно назначив последний на ваш объект. Актуально, только, если вы используете визуализатор Vray.

Где найти карты?

Модификатор Normal позволяет вам выравнивать или разворачивать нормали объекта без применения модификатора Edit Mesh .

Например, если вы бы хотели влететь в процедурный объект, например сферу или цилиндр, и хотели бы сохранить контроль над радиусом и количеством сегментов, вы не могли бы объединить объект в Editable mesh , сохраняя при этом процедурный характер примитива.


Разворачивая нормали сферы, создается небо над городом.

Для того чтобы использовать модификатор

1 Выберите объект . Потом выберите : Modify panel > Modifier List, выберите Object-Space Modifiers > Normal.

2 Если объект имеет некоторые грани направленные вовнутрь, а остальные изнутри, тогда включите Unify Normals чтобы сделать все грани однонаправленными.


Unify Normals – объединяет нормали путем разворачивания их таким образом что они направлены в одну сторону. Это удобно когда необходимо восстановить грани к изначальной ориентации. Порой нормали в сценах, импортированных из DWG и DXF файлов неверны, в зависимости от метода создания сцены. Используйте эту опцию модификатора, чтобы откорректировать их.

Flip Normals – Изменяет направление нормалей на противоположное.

Запекаем карту нормалей (normal map) в Substance Painter

Основные правила. Подготовка модели к экспорту в Substance painter.

Всем привет! В этой статье я хотел бы поговорить о запекании карты нормалей (normal map) в программе Substance Painter. Вернее было бы сказать, что я попытался собрать воедино все тонкости запекания в Substance Painter. В самом процессе запекания карты нормалей нет ничего сложного и сверхъестественного. Вопрос в том, почему у многих начинающих этого не получается. Хотя вроде все делают как надо. Я попытался вывести несколько правил, которые помогут вам сделать это быстро и качественно. Так же мы рассмотрим причины, по которым порой не получается запечь карту нормалей. Разбирать процесс подготовки мы будем на примере части 3d-модели бульдозера.

Я буду делать урок на основе программы Maya. В 3ds Max принципы те же, только инструменты другие.

Большинство наших действий будут направлено на подготовку модели для запекания. Что-то из моих пунктов не так критично и может просто указывать на то, как я подготавливаю модель для Substance Painter и игрового движка UE4 или Unity 5.

Чтобы запечь карту нормалей нам понадобиться две модели. Одна модель высоко полигональная (hi poly), а другая низко полигональная (low poly). Вы можете изготовить вначале высоко полигональную 3д модель, а затем на ее основе сделать низко полигональную модель. Или выражаясь по-другому сделать ретопологию. И сделать это можно с помощью программы topoGun или вручную. Хотя кто-то предпочитает делать вначале low poly модель и затем уже наделять ее деталями. Все зависит от вашего предпочтения и удобства.

Имеет смысл создать два отдельных слоя low и high. Это очень поможет вам в дальнейшем. В один будете кидать все что относится к низко полигональной модели, а в другой высоко полигональной.

1. Suffix: делаем правильные суффиксы

Самое первое правило касается названий ваших деталей. Имена вашим деталям нужно будет давать специфические. Всем высоко полигональным деталям нужно будет давать суффикс _high, а низко полигональным _low. Обратите внимание на нижнее подчеркивание:
Base_low – Base_high
Крыло_low – Крыло_high

Всегда обращайте внимание на название ваших деталей чтобы не закрались ошибки, иначе Substance Painter откажется запекать карту нормалей. Важно, чтобы имена деталей совпадали и отличались только в суффиксе, _low и _high должны быть четкими. То есть без каких-либо приписок типа _low1. А такое бывает потому, что Maya сама приписывает цифры, так как название _low уже есть.

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

Внимательно посмотрите названия деталей в Outliner. Возможны вот такие казусы:

Запекаем карту нормалей (normal map) в Substance Painter

2. Align: выравниваем модели для запекания

Важно выровнять обе модели – вернее, отцентрировать их по отношению друг к другу! Делается это с помощью инструментов выравнивания Align.

Запекаем карту нормалей (normal map) в Substance Painter

Иначе, у вас может получиться вот такая штука:

Запекаем карту нормалей (normal map) в Substance Painter

Я, конечно, немного утрирую. Потому что сдвинул очень далеко. Но у вас могут быть мелкие артефакты, и вы будете задумываться почему такое происходит.

3. Freeze: сброс координат

Помимо того, что вы выровняете все детали можно еще сбросить все координаты в ноль посредством инструмента Freeze. Рекомендую делать эту операцию непосредственно перед экспортом модели в .obj формат.

Запекаем карту нормалей (normal map) в Substance Painter

4. Center Pivot: выставляем опорную точку

Для дальнейшей работы вам необходимо будет выставить реальный центр детали Center Pivot.

Запекаем карту нормалей (normal map) в Substance Painter

5. Cleanup: проверяем ошибки геометрии

Следующим шагом будет проверка нашей модели на наличие ошибок в геометрии: это один из важнейших этапов для последующего запекания карты нормалей (normal map) в Substance Painter. Для этого мы будем использовать инструмент Cleanup.

Запекаем карту нормалей (normal map) в Substance Painter

Запекаем карту нормалей (normal map) в Substance Painter

Раздел Cleanup Effect

  • Cleanup matching polygon – это практически автоматический поиск исправление, удаление или разбиение на треугольники неправильных полигонов в вашей модели.
  • Select matching polygons – неправильные полигоны будут подсвечены на нашей модели. Maya же исправлять ничего не будет, только выберет их.
  • Apply to selection objects – применить к выбранным объектам.
  • Apply to all polygonal objects – применить ко всем полигональным объектам.
  • Keep construction history – Оставляет историю в channel box.

Запекаем карту нормалей (normal map) в Substance Painter

Раздел Fix by Tesselation.

В зависимости от выбранных ранее пунктов программа либо исправит проблему, либо укажет на нее.

  • 4-sided faces – покажет все четырехугольные полигоны.
  • Faces with more than 4 sides – покажет полигоны с более чем четырьмя сторонами.
  • Concave faces – отмечает все полигоны, которые не являются выпуклыми фигурами.
  • Faces with hole – полигоны с отверстиями.
  • Non-planar faces – будет отмечать все полигоны, которые не являются плоскостью. Укажет все полигоны, чьи вершины не лежат в одной плоскости.

Запекаем карту нормалей (normal map) в Substance Painter

Раздел Remove Geometry.

Запекаем карту нормалей (normal map) в Substance Painter

Правильная UV развертка для запекания карт нормалей

Ваша UV развертка должна тоже соответствовать определённым правилам.

Если в вашей модели присутствуют острые углы, то режьте UV прям по ним. Я сделал как-то так.

Запекаем карту нормалей (normal map) в Substance Painter

В результате, у меня получилась хорошая, сглаженная модель.

Запекаем карту нормалей (normal map) в Substance Painter

Также, программа плохо относится к вытянутым полигонам. Поэтому, при возникновении проблем во время запекания normal map, нужно стараться делать полигоны по форме ближе к квадрату.

Запекаем карту нормалей (normal map) в Substance Painter

7. Soft or Hard Edge: определяем жесткие и мягкие грани

Следующим важным элементом в наших правилах будет определение жестких и мягких граней.
По сути, это правило сводится к тому, что острые углы детали – жесткие (hard), а внутренности- мягкие (soft).
Полезно будет изучить окно Polygon Selection Constraint on Edge (Select => Use Constrants. ). Оно позволяет задать всевозможные фильтры на выбираемые компоненты: например, выбирать только грани, находящиеся под определенным углом к линии взгляда. Таких фильтров там несколько.

Запекаем карту нормалей (normal map) в Substance Painter

Для начала я сбросил все настройки выбора (Reset). Выбираем все ребра и выставляем им всем сглаживание Soft.

Запекаем карту нормалей (normal map) в Substance Painter

Запекаем карту нормалей (normal map) в Substance Painter

Затем, настроим фильтр по углам.

Запекаем карту нормалей (normal map) в Substance Painter

Минимальный угол: 45°, а максимальный: 120°.

Далее, жмем кнопку Close and Remember – Закрыть и запомнить.
Возможно, вам будет удобнее сделать все вручную. Тут главное понять сам принцип.

8. History: работаем с историей

Тут все просто: Удаляем всю историю, что вы делали с деталью. Есть смысл вывести эту команду на полочку Shelf. Как это сделать, я говорил в уроке по созданию полок в Maya ;).

Есть еще один момент, связанный, скорее всего, с багом программы, когда история не хочет удаляться. Перерыв кучу источников по этому вопросу, я пришел к выводу, что самым простым способом будет продублировать модель, а старую удалить. Есть еще подозрение на то, что все плохо с историей после инструмента Freeze. Так что, старайтесь замораживать позицию модели непосредственно перед экспортом в формат obj. Если у вас есть другие способы борьбы с этой ошибкой – напишите мне (или в комментариях к уроку).

9. Запекание мелких деталей

Все мелкие детали, что вы сделали на hi poly модели (ручки, кнопки, дополнительные панельки) можно запечь на low poly модели посредством карты Normal. При создании мелких деталей следует учитывать их геометрию. Стараться избегать крутых углов под 90°. Лучше чуть увеличить угол – тогда программе будет проще запечь геометрию.

Запекаем карту нормалей (normal map) в Substance Painter

Запекаем карту нормалей (normal map) в Substance Painter

Запекаем карту нормалей (normal map) в Substance Painter

Все детали вы соединяете в одну посредством инструмента Combine.

Запекаем карту нормалей (normal map) в Substance Painter

Вот тут возможен еще один казус, который может помешать вам запечь мелкие детали. Хотя все до банального просто. При соединении деталей в одну посредством Combine, программа Maya переименовывает эту получившуюся деталь, а вы этого можете не заметить. Так что внимательно проверяйте все через Outliner. Я просто выделяю все детали из слоя low и смотрю чтобы не было никаких казусов с именами.

Запекаем карту нормалей (normal map) в Substance Painter

10. Формат экспорта

В Maya есть возможность сохранять в формат .fbx посредством инструмента game exporter. Лично у меня Substance Painter и Substance Designer работают с ошибками с этим форматом. На модели возникают дырки в геометрии. Предполагаю, что это какой-то баг Maya. Возможно, у вас все будет прекрасно – попробуйте!
У меня отлично работает File -> Export Selection и экспорт в .obj формат.

Запекаем карту нормалей (normal map) в Substance Painter

Я оставил включенными только пункт материалы и сглаживание.

Запекаем карту нормалей в Substance Painter

Открываем Substance Painter 2. И создаем новый проект: File-> New.

Запекаем карту нормалей (normal map) в Substance Painter

Через кнопку Select выбираем нашу low poly модель. Остальные параметры выставляем как на картинке. Обратите внимание что нет галочки на пункте Creat a texture set per UDIM tile.

В окне TextureSet Settings нажимаем кнопку Bake textures.

Запекаем карту нормалей (normal map) в Substance Painter

Запекаем карту нормалей (normal map) в Substance Painter

Не буду разбирать все пункты этого окна, так как это тема отдельного разговора. Пробегусь только по тем пунктам, которые нам интересны в данном уроке.
Оставляем галочку только напротив пункта Normal, остальные снимаем. Потому что мы запекаем только карту нормалей (Normal). Разрешение играет роль, от этого будет зависеть качество карты.
В разделе High poly parameters, в окне High Definition Meshes, нажимаем на пиктограмму листика с загнутым краем. Выбираем нашу high poly модель.

Cage File: тут вам позволяют выбрать свою cage модель, если ее у вас нет то пропускаем этот пункт.
Max Frontal Distance и Max Rear Distance: Я выставил значение 0.03 – это позволило мне добиться хорошего качества. Вы можете поиграть этим значение в большую или меньшую сторону и посмотреть на конечный результат запекания карт нормалей (normal map).

Остальные галочки оставьте как есть. Единственное, может включать или выключать Average Normals (усреднение значений).
Match: By Mesh name или Always – важный пункт, если в вашей модельке много деталей. Позволяет запечь каждую деталь как бы отдельно. То есть программа уже не смотрит на находящиеся рядом детали. Если у вас много деталей выбирайте By Mesh name. Вот именно для этой цели мы и давали каждой детали отдельные похожие названия изменив при этом suffix _low и high.
base_low – base_high
Antialiasing: Выбор уровня сглаживания.
High poly mesh suffix и Low poly mesh suffix: вот тут вы можете назначать имена суффиксов сами, какие вам больше удобны.

Запекаем карту нормалей (normal map) в Substance Painter

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

Напомним, что в предыдущих уроках по Maya (моделирование и создание развертки и текстур), мы подробно изучали создание low-poly 3d-модели микроавтобуса.

На этом наш урок по запеканию карты нормалей в Substance Painter закончен. Спасибо за внимание! Если вас интересуют уроки по Substance Painter пишите.
С Уважением, Onza!

Перепечатка и использования данного материала без прямой обратной ссылки категорически запрещена!

Читайте также: