Mental ray для 3ds max. Часть 5. Запекание текстур (render to texture)
При обычном способе рендеринга расчет изображения выполняется либо через камеру, либо «от лица» наблюдателя. Эта схема настолько привычна, что представить себе рендеринг в отсутствии наблюдателя довольно сложно. Получаемое через камеру статичное изображение является мгновенным снимком трехмерной сцены, выполненным из одной единственной точки наблюдения в каждый отдельный момент времени. Однако, вне зависимости от того, видим ли мы заднюю сторону объекта через камеру или нет, она все равно освещена, имеет материал, рельеф и так далее. При изменении положения камеры мы сможем увидеть то, что ранее было скрыто от наблюдения, а то, что мы только что видели, станет невидимым.
На самом деле не все так просто. Только очень небольшой класс расчетов может быть выполнен корректно и полностью за один раз. В качестве позитивного примера могу назвать фотонные карты и radiosity. Большинство других расчетов в принципе не может быть выполнено однократно в полном объеме. Например, отражения и преломления света поверхностями объектов основываются на относительном положении наблюдателя, объекта и источника освещения. Исключение из этой схемы наблюдателя делает такой расчет некорректным. Поэтому, истинные отражения и преломления запечь нельзя, и для их рендера в текстуру используются разные хитрости.
В режиме mesh mode шейдер mib_lightmap_write вызывается непосредственно при рендеринге. В этом режиме основной шейдер снова вызывает сэмплер, на сей раз для расчета каждого пиксела запекаемой карты, кроме вершинных пикселов, которые уже посчитаны. В результате получается качественная и точная растровая карта, каждый пиксел которой рассчитан сэмплером по соответствующей точке поверхности объекта.
Для того чтобы инициализировать процесс запекания в 3ds max средствами mental ray, необходимо предварительно создать для поверхности объекта текстурные координаты и затем назначать шейдер mib_lightmap_write в слот Light Map материала объекта. После этого запекание текстур (light map) для поверхности, которой назначен такой материал, будет выполнено автоматически во время рендеринга.
Существует еще один способ: в качестве сэмплеров можно использовать любой материальный шейдер mental ray. В этом случае основной шейдер будет в нужное время вызывать материальный шейдер для каждой точки поверхности и записывать возвращаемый им цвет в запекаемую текстуру.
Использование материальных шейдеров является недокументированной возможностью mental ray, использовать этот метод «можно, но осторожно». Назовем этот способ запекания «способом №1»
Существенным недостатком RTT является некорректная работа с материалами, чьи свойства определяются шейдерами через mental ray Connection. При запекании таких материалов RTT воспринимает их как стандартный материал 3ds max, полностью игнорируя закладку mental ray Connection в его свойствах. В итоге, запекание дает совершенно неправильный результат. При этом даже оригинальный материал, по которому выполняется запекание, повреждается. В качестве выхода из этой ситуации можно либо воспроизвести материал на основе mental ray material, тогда RTT будет правильно его обрабатывать, либо использовать способ №1 запекания материала шейдером mib_lightmap_write.
Типичная процедура запекания материала при помощи шейдера mib_lightmap_write состоит из следующих шагов.
2. Удобнее всего для работы создать новый mental ray material и использовать его в качестве контейнера запекаемого материала. Удобнее, потому что придется копировать запекаемый материал в сэмплер поверхности mib_lightmap_write.
3. В слот Light Map назначаем шейдер mib_lightmap_write. В слоте Texture задается название, формат файла и разрешение запекаемой карты. Примечание: при рендеринге можно получить сообщение об отсутствии карты, которую вы указали. Это сообщение можно спокойно проигнорировать. В UV Generator (3dsmax) определяем, как использовать созданные ранее текстурные координаты.
4. В слоте Surface Sampler по умолчанию назначен Lightmap Sample (base). Если нужно посчитать карту освещения, оставляем его. Если же нужно запечь какой-нибудь материал, назначаем вместо Lightmap Sample сначала Material to Shader и в его слот «material» копируем материал, который нужно запечь.
5. При необходимости, в слот Surface, через Material to Shader можно еще раз скопировать запекаемый материал, хотя это необязательно.
6. Теперь настраиваем сам рендер и выполняем рендеринг. По завершении запеченная растровая карта будет находиться по указанному в настройках пути.
После запекания RTT в паре со scanline-рендером 3ds max получаем совершенно правильный результат:
Если этот же материал запечь при помощи RTT и mental ray, получим:
Эта ошибка относится к некорректной работе RTT и происходит только при запекании, рендер blend-материала в камеру выполняется корректно. Чтобы mental ray смог правильно запечь «бленду», воспользуемся способом №1.
Для этого создаем новый mental ray материал, назначаем mib_lightmap_write в слот Light Map. Переходим на закладки mib_lightmap_write, в слоте Texture указываем путь, имя и тип файла, разрешение (я выбрал 512х512, потому что карты большего размера в видовом окне max не отображаются) и цветовую модель (8 бит на канал даст обычное RGB изображение). Затем нажимаем кнопку Coordinates и настраиваем параметры генератора текстур. Поскольку текстурные координаты были уже созданы ранее при помощи Unwrap UVW, необходимо только проследить, чтобы MapSlotType=0 (текстура, а не окружение), MapChannel имел значение номера канала, который назначен для текстурных координат, Blur=0. Выходим из генератора «наверх» и нажимаем кнопку Surface Sampler. Для параметра Surface по умолчанию назначен Lightmap Sample (base), нажимаем кнопку справа и из списка выбираем Material to Shader. Теперь перетягиваем запекаемый blend-материал на кнопку material в Material to Shader. На вопрос отвечаем «Instance», если нужно сэкономить память, или «Copy».
Эту же операцию копирования можно повторить и для слота Surface материала mental ray. Тогда при рендере мы будем видеть рассчитываемое изображение. Если этого не сделать, объект будет черным при рендере, но на запекаемую текстуру это не повлияет, а время сэкономит.
Если источники света не выключать, то запечется такая текстура:
То есть, вместе с цветом текстуры рассчиталось и запеклось освещение.
Как я уже говорил выше, описанный метод работает и во многих других случаях. Однако результат его работы будет зависеть от конкретной ситуации, и почти всегда будет отличаться от рендера с тем же материалом в «камеру». Поэтому, для достижения идентичности, или похожести, запекаемой текстуры и рендера «в камеру» почти всегда требуется специальное редактирование материала «под запекание».
Описанный метод запекания не документирован и официально не поддерживается (и даже не упоминается) в документации mental ray или 3ds max. Поэтому, используйте его на свой страх и риск. Хочется особо подчеркнуть, что для полноценного запекания материальных шейдеров все же требуется программировать специальные полноценные сэмплеры.
Теперь рассмотрим более подробно штатные средства рендера в текстуры, RTT в 3ds max, или способ №2. Дело того стоит, поскольку в некоторых ситуациях без него никак не обойтись, к тому же, он серьезно автоматизирует и упрощает весь процесс запекания. RTT (Render To Texture) в 3ds max 7.5
Рассмотрим подробно предназначение настроечных параметров панели Render to texture.
Секция параметров General Settings.
Эта секция параметров определяет настройки отображения процесса расчетов, пути сохранения файлов, а также выбор и настройку рендера для запекания.
Группа параметров Output.
Группа Selected Object Settings.
Список Modifier для выбранного в видовом окне объекта показывает список имен уже назначенных ему модификаторов Projection. Пуст, если работа с объектом выполняется впервые.
Галочка в Object Level заставляет 3ds max выполнять проекцию на уровне объекта.
Установка галочки в Sub-Object Levels выполняет проекцию выбранного в настоящий момент подобъекта или их группы.
Full Size и Proportional взаимно исключают друг друга.
Группа Mapping Coordinates.
Позволяет определить источник текстурных координат, если они уже есть у объекта, или создать новые текстурные координаты при запекании.
Use Existing Channel, в качестве источника будет использован канал с ранее подготовленными текстурными координатами.
Channel, позволяет выбрать номер канала с готовыми текстурными координатами.
Use Automatic Unwrap позволяет создать набор новых текстурных координат, использует модификатор Unwrap UVW с автоматическим проектированием координат в режиме Flatten Mapping.
Секция параметров Output
В этой секции определяются параметры самих запекаемых.
Если элемент уже назначен для запекания выделенному объекту, он в списке доступных не появляется.
Для добавления элемента в список запекаемых карт нажимаем кнопку Add и выбираем элемент из появляющегося в диалоговом окне списка. Для удаления выделяем элемент и нажимаем Delete.
Группа параметров Selected Element Common Settings.
Позволяет разрешить или запретить запекание выделенного в списке элемента в текущей сессии (Enable), задавать название запекаемого элемента (Name), название и тип файла запекаемой карты (File Name and Type). Размер карты может быть определен вручную (указанием величины в Size), из готового набора размеров (кнопки с цифрами) или может определить размер карты автоматически (Use Automatic Map Size).
Target Map Slot определяет назначаемый запекаемой карте слот нового материала. Содержимое списка зависит от того, выполняется запекание в стандартный материал 3ds max или mental ray material. В последнем случае в списке будут перечислены доступные типы шейдеров для определения свойств материала.
Для стандартного материала 3ds max доступны для определения следующие свойства: Ambient Color, Diffuse Color, Specular Color, Specular Level, Glossiness, Self-Illuminations, Opacity, Filter Color, Bump, Reflection, Refraction, Displacement.
Группа параметров Selected Element Unique Settings.
Содержит список доступных для выделенного в данный момент элемента запекания. Содержание окна этой группы изменяется в зависимости от выделенного элемента.
Секция Baked Material
Определяет способ использования запекаемых карт для определения свойств нового материала.
Кнопка Update Baked Materials создает для выделенного объекта новый Shell материал и расставляет по слотам запеченные карты.
Кнопка Clear Shell Materials удаляет из объектов и замещает его либо оригинальным материалом, либо материалом с запеченными картами. Выбор позволяют осуществить опции Keep Source Materials или Keep Baked Materials.
Секция Automatic Unwrap Mapping
Настроечные параметры этой секции влияют на создание текстурных координат для карт.
Автоматическое создание координат происходит, если в секции Objects To Bake выбрана опция Use Automatic Unwrap при создании нового набора координат. Объекту назначается модификатор Automatic Flatten Uvs. Модификатор можно использовать для редактирования текстурных координат, выбрав его в стеке объекта.
Группа параметров Automatic Unwrap Mapping
Fill Holes позволяет вкладывать мелкие кластеры в пустые неиспользуемые пространства (дыры) внутри больших кластеров. Эта опция, также как и Rotate Clusters, минимизирует бесполезные потери координатного пространства.
Spacing определяет минимально допустимое расстояние между кластерами. Величина Spacing всегда должна быть больше нуля, иначе произойдет наложение координат друг на друга.
Группа параметров Automatic Map Size.
Алгоритм рендеринга в текстуры может самостоятельно определить необходимый размер карты. Для этого в секции Output нужно включить Use Automatic Map Size. Параметры рассматриваемой группы позволяют дополнительно задать некоторые свойства расчетов размера карты. В автоматическом режиме размер карты вычисляется по общей площади поверхностей всех выделенных объектов и затем умножается на величину Scale, после чего создается квадратная текстурная карта с вычисленной размерностью.
Заканчивая обзор возможностей RTT в 3ds max, нужно отметить, что этот инструмент автоматизирует всю работу по запеканию текстур и очень удобен в использовании.
Рассмотрим запекание фотонной карты на примере простой сцены с одним omni источником света и двумя объектами: кольцо с отражающим материалом, обеспечивающим фокусирование фотонов после отражения, и плоскость, на которой лежит кольцо с диффузным материалом. Фотонная карта для расчета каустики настроена, просчитана и сохранена, чтобы при рендере подгружаться из файла. Рендер сцены выглядит следующим образом:
Запекать нужно карту для плоскости, на которой лежит кольцо, поскольку каустика отражается на него. Выделяем плоскость и вызываем RTT. Выполняем следующие настройки параметров рендера в текстуры:
Для создания текстурных координат используется Automatic Unwrap с установками по умолчанию, поскольку плоскость довольно простой объект. В качестве элемента запекания выбрана LightingMap и включен расчет только непрямого освещения Indirect Light, поскольку запекается только фотонная карта. В качестве целевого слота выбран диффузный цвет нового материала (Diffuse Color).
После небольшого редактирования текстурных координат получаем рендер с запеченной фотонной картой:
Normal bump map относительно новая возможность 3ds max и представляет собой тип карты для получения детализации низкополигонных поверхностей по высокополигонным аналогам. Normal map является растровой картой, каждый пиксель которой своим положением и цветом кодирует положение и направление нормалей поверхности и высоту точек поверхности объекта относительно направления нормали.
Пример создания и использования Normal bump map.
В 3ds max создана модель меча с текстурными координатами, количество полигонов модели около 17 тысяч.
После обработки в Zbrush модель состоит из 141 тысячи полигонов и содержит множество мелких деталей. Создадим карту Normal bump map для исходной модели (цель) по этой высокополигонной модели (источник).
Прежде всего, нужно совместить в пространстве и точно выровнять обе модели. Цель должна быть чуть меньше источника, так чтобы контур цели целиком находился внутри контура источника. Поэтому, при необходимости нужно отредактировать положение вершин поверхности цели.
После завершения редактирования Cage можно считать подготовительную работу законченной. Возвращаемся в панель RTT и нажимаем Render.
После завершения рендеринга в слоте Bump материала исходного объекта появится запеченная карта.
Устанавливаем для Bump Amount =100, скрываем высокополигонный объект и выполняем рендеринг.
Сгенерированную Normal bump map можно дополнительно использовать и в слоте Displacement, это позволяет добавить деталей на краях объекта, хотя и замедляет рендер.
Таким образом, рендер в текстуры в 3ds max с использованием mental ray является гибким многофункциональным и вполне рабочим инструментом, знание и умение работать с которым позволяет существенно расширить возможности рендеринга и создания новых материалов. А появление Normal bump map превращает запекание текстур в полноценный инструмент моделирования, владеть которым должен каждый, кто работает с 3d. И хотя RTT не лишен недостатков, они не принципиальны. Будем надеяться, что в последующих релизах 3ds max эти недостатки полностью исчезнут.
Большая идея: «Запекание»
«Запекание» представляет собой часто используемый термин в компьютерной графике (CG) когда речь идет о разработке компьютерных игр и традиционном рендеринге, не в режиме реального времени (Cycles или Blender Render). Но «запекание» приносит с собой определенные коннотации в реальный мир, которые вводят в заблуждение. Моя цель в этой статье состоит в том, чтобы согласовать этот термин и уточнить, что на самом деле означает запекание.
Различные типы запекания
Существует несколько различных видов запекания. Но прежде чем я начну перечислять и обсуждать их, хочу предложить общее резюме термина, то как оно относится к CG. Думайте о запекании, как о консолидации системы данных в упрощенной, более постоянной форме. Эта концепция обычно применяется тремя способами:
1. Запекание текстур
Наиболее распространенным способом является запекание текстур (или карта запекания). Преимущество запекания текстуры заключается в способности перенести характеристики 3D-геометрии на 2D-изображение.
Существует много признаков, которые могут быть запеченны, от изолированных атрибутов (Ambient Occlusion, нормали, цвета вершин, и т.д.) до их комбинаций, включая материалы, текстуры и освещение запеченные в одну текстуру. На изображенный ниже приведен пример последнего: 

И это очень здорово! Сложные материалы и комплексное освещение могут быть объединены в одной текстуре и это является отличным трюком. Вы, наверное, можете себе представить насколько полезным является этот метод для игр и других приложений реального времени. Но важно понимать, что это ограниченная статичная текстура, не динамическая. Другими словами, если вы переместите голову обезьянки, то тень от нее останется в том же месте, где и была, вместо того, чтобы обновляться в режиме реального времени, как это происходит во время рендеринга в окне 3D-вида с помощью движка рендеринга Cycles. Таким образом, данная методика ограничена, хотя и чрезвычайно полезна при грамотном использовании.
В дополнение к запеканию результатов визуальных характеристик, таких как освещение и материалы, мы можем также аппроксимировать геометрию высокого разрешения на низкополигональную модель благодаря запеканию нормалей. Это экономит огромные ресурсы за счет незначительных различий воспринимаемых между низким и высоким разрешениями. Опять же, вы можете себе представить, сколько выгоды от данной техники получают игры. Вот пример: 


Наконец, запекание некоторых атрибутов может помочь в процессе разукрашивания текстуры. Например, вместо того, чтобы вручную рисовать темные области в щелях объекта, вы можете запечь текстуру окружающей окклюзии (AO) и она все сделает за вас. Точно также, если вы хотите создать эффект потертости на краях объекта, можно запечь текстуру цветов вершин (dirty vertex colors). И таких примеров еще можно привести огромное количество.
2. Запекание анимации / симуляции
Та же идея консолидации системы данных в упрощенной форме продолжается в анимации и симуляции. Если подумать о ключевых кадрах анимации персонажа, то существует огромное количество работы, которую должен выполнить компьютер, чтобы мы в итоге могли увидеть результат. Риг персонажа со всей своей иерархией, ограничителями и деформациями мешей вместе с сотнями или даже тысячами ключевых кадров, каждый из которых имеет собственный тип интерполяции. Это очень много работы.
Существует несколько способов упростить все это с помощью запекания. Во-первых, в Blender вы можете выполнить операцию под названием «Bake Action». Это просто добавляет ключевой кадр для всех преобразований каждой кости для каждого кадра анимации. Хотя это может показаться «не особо то и проще», это, на самом деле, упрощает анимацию, так как она больше не зависит от ограничителей костей и других реляционных зависимостей. Bake Action также служит своеобразным «блокировщиком» анимации, что позволяет сохранить ее целостность.
3. Запекание света
Этот тип запекания более специфичен для игровых движков. Но так как игры тесно связаны с более широкой областью компьютерной графики, я думаю, что будет уместно коснуться еще одного варианта термина «запекание».
Целью в данном случае является сохранение ресурсов, поэтому игра должна работать настолько эффективно, насколько это возможно. Существует два типа освещения, которые могут использоваться для создания игр: статичное и динамическое. Динамическое освещение реагирует на все изменения в сцене, такие как смещение тени и информация о материале, на который они падают. Статичное освещение является стационарным и может быть исключено из расчетов динамического освещения для экономии ресурсов. 

Мобильные и веб-игры часто используют запеченные карты света, которые предоставляют информацию об освещении всей сцены или конкретного уровня игры. Это означает, что вы можете создать хорошо освещенные места лишь за незначительную часть стоимости (ресурсов) динамического освещения. При запекании карт света, как статичное, так и динамическое освещения могут быть использованы одновременно, чтобы создать более реалистичную среду.
Unity использует систему светового зонда которая позволяет не статичному (анимированный или динамический) объекту получать информацию из запеченных карт света, что позволяет сэкономить ресурсы с их помощью при симуляции динамического освещения.
Я надеюсь, что смог разъяснить, что же означает термин «запекание». Если вы желаете получить еще больше информации о запекании текстур и их практическом применении, пожалуйста, посмотрите эти курсы:
Всё про Bake (Запечку) как этап ААА-пайплайна
Это пятая статья из цикла про ААА-пайплайн. Вот ссылки на все пять, выбирай ту, которая тебе нужна:
Эта статья поможет новичкам, которые хотят научиться делать запечку без артефактов. Ты узнаешь, что такое запечка, зачем она нужна и научишься переносить детализацию с high poly на low poly. Внимательное изучение статьи займет около 20 минут. Если возникнут вопросы — пиши в чат-бот (кнопка справа внизу). Там на связи живой менеджер 🙂 Он поможет разобраться. Ну что, давай начнем!
Что такое запечка в 3D
Взглянем на low poly модель нашего студента.
Минимум полигонов и чистая сетка. Эта модель будет загружаться в игровой движок.
Есть ещё high poly модель с высокой детализацией и скульпт.
На low poly мы добавляем запеченные карты нормала и карту затенений. Это карты, которые обманывают поведение игрового света. Свет падает под определенным углом на модель и создает блик. В итоге нам кажется, что в модели много фасок, деталей и вырезов.
На этапе запечки наша задача — запечь 3 карты:
1) Normal map — карту неровностей
2) Ambient Occlusion (AO) — карту затенения
3) Color ID — цветные маски
Если добавим Normal map и AO на low poly модель — на ней появится детализация с high poly и скульпта. Благодаря Color ID модель легче разбить по материалам и текстурировать. Эти карты создают на основе развертки, которую мы делали этапом ранее. Помни, если есть ошибки на развертке или low poly модели — будет куча проблем с артефактами.
Как запекать карты
Пример low poly модели с включенным нормалом и без него
Из-за того, что игрок видит модель в игре на расстоянии, нам не нужно тратить несколько часов, чтобы убрать черные полоски на нормале:
Normal map создает иллюзию объема из-за трех карт в каналах текстуры: красной, зеленой, синей. Чтобы переключаться между каналами, откроем файл с нормалом в Photoshop и зайдем во вкладку Channels.
Если после запечки есть артефакты, нормал нужно править руками. Иногда это делают сразу на всех трёх каналах, а иногда — на одном из них.
128х128х255 — нейтральный цвет нормала.
Если добавить полностью нейтральный нормал — особой разницы видно не будет. Модель будет шейдить так же, как обычная low poly.
В каком формате лучше хранить нормал?
После запечки часто приходится вносить изменения в нормал при помощи Фотошопа. Поэтому файл лучше сохранять в форматах Targa или TIF. При сохранении есть выбор, сохранять в 24 или 32 bit. Если есть Альфа-канал — сохраняем с 32 bit. Если Альфа-канала нет — в 24 bit.
Ambient occlusion (AO) — это карта затенения. Она показывает самые глубокие тени в объекте — в основном в углублениях и на пересечениях. Эту карту используют в игровых движках для создания корректного освещения и в текстурировании.
Например, без АО почти нереально сделать грязь. Но с картой АО мы легко сгенерируем маску углублений, чтобы забить их грязью.
По-умолчанию карта черно-белая, но на этапе текстурирования ее можно покрасить.
С помощью Color ID красим модель в разные цвета
Чтобы создать карту Color ID, нужно покрасить high poly модель в разные цвета. Один цвет — это одна группа объектов разбитая по материалам. Например, все дерево на Color ID — оранжевое, вся кожа — розовая, ржавый металл — синий, шерсть — голубая, а новый металл — зеленый.
Color ID — не цвета будущей модели, эта карта нужна для разделения на разные материалы.
Много дополнительных карт для запечки есть в Marmoset, а еще там можно печь цвета и материалы с других моделей и текстур, чтобы не переделывать с нуля. Но сейчас гораздо проще печь дополнительные карты прямо в Substance Painter.

Список карт, которые можно запечь
Если ты интересовался какой софт лучше использовать для запечки — это не важно. Принцип запечки во всех программах одинаковый. Просто выбирай, что больше нравится: Maya, Blender, 3D Max, Modo или Cinema 4D.
Как сделать самую быструю в мире запечку?
Шаг 1: Открываем Marmoset.
Шаг 2: Загружаем low poly и high poly, добавляем их в одну группу запечки (Baker).
Шаг 3: Нажимаем кнопку «Bake».
Когда карта будет готова, открываем Maya, добавляем на low poly карту нормалей.
Получается такой результат:
Артефакты появились по целому ряду причин. Где-то low poly и high poly плохо совпадают. Где-то элементы запеклись друг на друга. Где-то кейдж недостаточно большой. Единственный способ исправить ситуацию — переделать модель.
Что делать, чтобы на модели не было артефактов
1. Правильно подготовить low poly к запечке
Для этого мы следим за шейдингом модели. Вот пример плохого и хорошего шейдинга:
Секрет хорошего шейдинга — в правильной работе с хардами и софтами:
2. Убирать зазоры между геометрией
Следим, чтобы не было дырок между геометрией:
В таких местах нужно слегка притопить геометрию внутрь другой
3. Триангулировать модель
Проверив всю low poly модель, обязательно включаем функцию триангуляции.
Если не триангулировать модель перед запечкой — в разном софте она будет смотреться по-разному.
Что учитывать на high poly?
Если high poly шейдит некрасиво — дорабатываем геометрию. С high poly вся детализация будет переноситься на low poly.
Следи, чтобы фаски не были тонкими, иначе они не запекутся. Вот пример хороших и тонких фасок:
Скошенная геометрия лучше печется на плоскости. А геометрия без скосов не печется совсем.
Крутой лайфхак в мире моделлеров — парящая геометрия.
Проверяем, совпадают ли high poly и low poly
High poly и low poly должны максимально совпадать. Вот пример, когда они не совпадают:
Затем проверяем, совпадают ли фаски. Для этого назначаем на low poly бликующий материал и делаем его прозрачным.
Что делать перед тем, как начать запечку
Мы уже подготовили low poly, high poly и развертку к запечке. Но прежде чем нажимать волшебную кнопку, нужно выполнить еще три простых действия, которые помогут в дальнейшем.
Правильный нейминг сэкономит гору времени во время работы с группами запечки — лишний мусор не будет мешать при работе. Проверяем, совпадает ли нейминг внутри группы low poly с неймингом внутри high poly.
В Maya есть полезная функция File → Optimize Scene Size, которая удаляет из сцены мусор, который нигде не используется. Лишние слои, материалы и пустые группы.
Backup похож на резервное копирование, он поможет не потерять проделанную работу. Во время запечки иногда приходится править часть геометрии. Где-то добавятся фаски, где-то поддержки, и так далее. Поэтому может начаться настоящий хаос, если не сохранить исходник модели.
Перед запечкой создаем отдельную папку «Bake» и сохраняем туда бэкап исходного файла до начала запечки — на всякий случай.
Подготовка сцены в Marmoset
Ставим более высокое разрешение
Прежде чем делать запечку, указываем какого размера будут карты. Ставим разрешение карт в 2 раза выше, чем будет у финальной модели. Так часто делают в продакшене, так как текстура в 2к уменьшенная до 1к и выглядит лучше, чем текстура, сделанная сразу в 1к.






































