Gamedev
Игорь Дятлов
4792

Всё про Bake (запечку) как этап ААА-пайплайна

Мы продолжаем цикл статей по пайплайну разработки стилизованных персонажей. Сегодня расскажем, что такое этап запечки, и как перенести детализацию с высокополигональной модели (high poly) на низкополигональную (low poly).

В закладки
Аудио

Запечка (Bake) — четвёртый этап ААА-пайплайна. На прошлом мы сделали развёртку, а сейчас будем её использовать для создания Normal Map, AO и Color ID.

Примечание: нам часто говорят, что правильнее писать «запекание», а не «запечка». Мы пишем «запечка», потому что это устоявшийся термин в индустрии.

​Гугл на слово запечка показывает то, что нам нужно, а на слово запекание предлагает запечь курочку

Что такое запечка

Взглянем на low poly модель, которую сделал наш студент Leon.

В ней минимум полигонов и чистая сетка. Эта модель будет загружаться в игровой движок.

Есть ещё high poly модель с высокой детализацией и скульпт.

High poly модели под сабдив и скульпт​

Технология запечки позволяет перенести все детали с high poly и скульпта на low poly-модель.

В итоге, в игровом движке будет low poly модель с минимальным количеством полигонов, но выглядеть она будет так, как будто на ней есть все эти детали:

Для внимательных: ID Map никак не влияет на вид модели, в отличие от нормала и АО, но она пригодится при текстурировании, поэтому эту карту тоже будем печь.

Как это работает?

Мы берём low poly модель и добавляем на неё запечённые карты нормала и АО. Эти карты обманывают поведение игрового света. Модель начинает бликовать так, как будто на ней есть все эти фаски, вырезы и прочие детали.

Для тех, кто не понимает, о чём речь: мы очень подробно писали про вертекс нормали и принцип работы нормала в статье про сетку.

На этом этапе пайплайна — запечке, — наша задача: запечь 3 карты.

1) Normal map — карту неровностей

2) Ambient Occlusion (AO) — карту затенения

3) Color ID — цветные маски

В Marmoset можно запечь гораздо больше карт, про это будет дальше.

Мы добавим эти карты на нашу low poly модель, на ней появится вся детализация с high poly и скульпта, а благодаря карте Color ID модель будет легче разбить по материалам и текстурировать.

Все карты создаются на основе развёртки, которую мы сделали на прошлом этапе пайплайна. Без развёртки карты не запекутся. Если есть ошибки на развёртке или low poly модели, то мы столкнёмся с кучей проблем.

Ссылки на теорию

Вот несколько наших статей, из которых можно понять, как работает «магический» трюк с обманом вертекс нормалей.

Какие карты будем печь

Нет смысла запекать карты, если не знаешь, что они делают и как работают.

1. Normal Map

​Normal Map

Normal Map переводится как «карта нормалей». Она изменяет направление блика на геометрии.

Карта создаёт виртуальные вертекс нормали в каждой точке low poly модели и искажает поведение света. Если наложить запечённый нормал на модель, то она будет выглядеть почти как high poly.

Вот хороший пример: low poly модель с включенным нормалом и без него.

​Модель с включенным нормалом и без него

Новые полигоны не создаются, это лишь иллюзия формы:

​Все детали и затенения на этой low poly сетке — иллюзия.

Все детали и затенения на этой low poly сетке — иллюзия.

Чтобы создать нормал, нужно взять развёртку, которую мы делали ранее, взять high poly и скульпт, загрузить в программу для запечки и нажать кнопку «bake».Там много нюансов, но мы обо всём расскажем.

​Из чего печётся Normal map

Что нужно знать о нормале

Небольшие чёрные полосы на нормале — это нормально. Никто не будет разглядывать нашу модель под микроскопом.

​Чёрные полоски на нормале

Почему не стоит сильно волноваться о чёрных полосах? Игрок почти всегда видит модель в игре на расстоянии. Поэтому не нужно тратить несколько часов, чтобы убрать чёрные полоски на нормале:

​Та же модель, но на расстоянии. Чёрные полосы не режут глаза, — значит, всё окей.

Из чего состоит карта нормалей

Normal map создает иллюзию объёма благодаря трем картам в каналах текстуры: красный, зелёный, синий.

Чтобы переключаться между каналами, откроем файл с нормалом в Photoshop и зайдём во вкладку Channels.

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

​Красный канал нормала

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

​Зелёный канал нормала

Чтобы лучше понять разницу между этими двумя каналами, взглянем на эту часть модели:

​У бочки на high poly есть фактура дерева.

Затемнение идёт только по одной из осей.

Так как красный канал нормала показывает искажение вертекс-нормалей только по горизонтали, а скосы между досками как раз и отклоняются влево или вправо, то на нём будет много информации.

А зелёный канал — показывает искажения по вертикали. Так как виртуальные плоскости не отклоняются вверх/вниз, то затемнений почти нет, то информации на нормале в этом канале почти не будет:

Зелёный и красный канал нормала на примере бочки​

Красный и зелёный каналы — основные для нас как для моделлеров. Но у нормала есть ещё синий канал.

Синий канал имитирует углубления в объекте. В играх он практически не используется.

За счёт изменения синего цвета на нормале создаются искажения на плоской поверхности.

Если на синем канале есть артефакты, можно просто выключить этот канал, то есть отключить синий цвет у нормал мапа в фотошопе. Или просто их замазать артефакты кисточкой.

​Синий канал нормала

Больше про три канала нормала — в этой статье.

У каждого канала — своя функция. При артефактах после запечки иногда нужно править нормал руками. Иногда это делается сразу на всех трёх каналах, а иногда — на одном из них. Если не разобраться в функциях этих каналов, сложно будет редактировать нормал.

Нейтральный цвет нормала

128х128х255 — нейтральный цвет нормала.

Если добавить полностью нейтральный нормал, то особой разницы видно не будет. Модель будет шейдить так же, как обычная low poly.

В каком формате лучше хранить нормал

После запечки, скорее всего, придётся вносить изменения в нормал, используя фотошоп.

Поэтому файл лучше сохранять в форматах Targa или TIF.

При сохранении есть выбор, сохранять в 24 или 32 bit.

Если есть Альфа-канал — сохраняем с 32 bit.

Если Альфа-канала нет — в 24 bit.

2. Карта АО

​Так выглядит запечённая карта АО

Карта Ambient occlusion (AO) — это карта затенения. Она показывает самые глубокие тени в объекте — в основном это тени в углублениях и на пересечениях. Эту карту используют в игровых движках для создания корректного освещения, а также она очень полезна в текстурировании.

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

​Если добавить на low poly модель карту АО, на модели появятся самые глубокие тени

Так же как и нормал, карта АО печётся на развёртку модели из high poly и скульпта.

​Карта AO создаётся из high poly и скульпта

При запекании по-умолчанию эта карта чёрно-белая, но на этапе текстурирования её можно покрасить.

С картой АО разобрались, последняя карта, которая нам нужна — Color ID

3. Карта Color ID

Наша модель состоит из разных материалов: металла, камня, дерева и ткани.

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

Чтобы это можно было сделать в один клик внутри Substance Painter, нам нужно запечь карту Color ID. Она позволяет быстро выделять большие куски. А в программе для текстурирования эту группу объектов можно легко затекстурить.

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

​Быстро красим модель в Substance Painter, используя карту Color ID

Для того, чтобы создать карту Color ID, нам нужно покрасить high poly-модель в разные цвета. Один цвет — это одна группа объектов, как правило разбитая по материалам. Например, всё дерево на Color ID оранжевое, вся кожа —розовая, ржавый металл — синий, шерсть — голубая, а новый и чистый метал —зелёный.

Это не цвета будущей модели — здесь они могут быть любыми. Главное, чтобы они были контрастными.

Дополнительные карты

В мармосете куча карт, которые можно запечь.

Их в разных пайплайнах используют разные художники для текстурирования:

Position map с помощью градиентов помогает накладывать текстуры в разных плоскостях модели.

Сurvature выделяет все края на модели и упрощает создание затёртостей и повреждений. Очень полезная карта на ряду с АО.

Thickness запекает толщину, что необходимо для имитации подповерхностного рассеивания.

Часто для hand paint текстур пекут свет прямо на текстуру. Иногда необходимо запечь альфу — карту прозрачности.

Ещё мармосет умеет печь цвета и материалы с других моделей и текстур, это иногда помогает не переделывать много текстур с нуля.

Сейчас проще печь дополнительные карты прямо в Substance Painter.

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

Софт для запечки

В конечном счёте софт не важен. Принцип работы запечки во всех программах один и тот же.

То же самое можно сделать в Maya, Blender, 3D Max, Modo или Cinema 4D. Я очень люблю запечку в Maya. Она печет отличный и аккуратный нормал, но требует много танцев с бубном из-за артефактов на плоскостях, а также из-за долгого и нудного подмешивания разных карт в Photoshop.

На курсе Draft Punk я выбираю Marmoset Toolbag, потому что в ней проще научиться печь. До Maya я недолго пек в xNormal, но научившись печь в Maya в xNormal не возвращался. Сейчас я часто слышу про запечку в Painter, но сам в нём никогда не пёк.

Как сделать самую быструю в мире запечку

Шаг 1: Открываем Marmoset.

Шаг 2: Загружаем low poly и high poly, добавляем их в одну группу запечки (Baker).

Шаг 3: Нажимаем кнопку «Bake».

Когда карта будет готова, открываем Maya, добавляем на low poly карту нормалей. Получается такой результат:

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

Артефакты появились по целому ряду причин. Где-то low poly и high poly плохо совпадают. Где-то разные элементы запеклись друг на друга. Где-то кейдж оказался недостаточно большим, а где-то неправильно расставлены хард и софт эджи.

Единственный способ — сделать всё заново, но подготовив модель к запечке.

Вся остальная часть статьи будет посвящена тому, как сделать так, чтобы артефактов не было. Это достаточно долгий, но системный процесс.

1. Подготовка low poly модели к запечке

Шейдинг

Low poly должна шейдить красиво. Вот пример плохого и хорошего шейдинга:

​Шейдинг у левой книги — плохой и никогда не запечётся. А с правой книгой всё окей.

Секрет хорошего шейдинга — в правильной работе с хардами и софтами.

Харды и софты и углы <=90 градусов

  • Всегда, когда угол 90 градусов — ставится хард.
  • Если угол меньше 90 градусов — ставим хард.
  • Если угол больше 90 градусов — можно смело ставить софт.Даже если угол 91 градус, ставим софт. Бывают исключения, но это отдельная большая тема для разговора.
​Остальные — харды

В 3Ds Max харды и софты называются группами сглаживания.

Почему нужно расставлять харды? Везде где харды, мы будем разрезать UV — про это позже. Пока что просто проверим, что харды везде назначены там, где они нужны. Если это не сделать, нормал будет вести себя нечестно.

В Maya для этого есть автоматическая функция, — Soften/Harden Edge. Я люблю в этом инструменте ставить 60 градусов. Все что острее будет хардом, а все что тупее — софтом.

Есть нюанс: если начал делать луп хардами, нужно продолжать хардами по всей его длине, иначе появятся артефакты:

Убираем зазоры между геометрией

Следим, чтобы не было дырок между геометрией:

В таких местах нужно слегка притопить геометрию внутрь другой.

Триангулируем модель

Проверив всю low poly модель, обязательно включаем функцию триангуляции.

Всегда триангулируйте перед запечкой!

Если не триангулировать модель перед запечкой — в разном софте она будет смотреться по-разному.

​Триангулируем

2. Что учитывать на high poly

Красивый шейдинг

Если high poly шейдит некрасиво, дорабатываем геометрию. Ведь именно с high poly вся детализация будет переноситься на low poly.

​Шейдинг нас устраивает, всё окей

Круглые фаски

Если фаски очень тонкие, они не запекутся. Вот пример слишком тонких фасок:

Зачастую фаски делают даже больше, чем нужно (больше чем в реальности), чтобы они лучше запеклись. Это очень подробно расписано в практическом руководстве по нормалу.

Скосы

Скошенная геометрия лучше печётся на плоскости. А геометрия без скосов не печётся вовсе.

​Мы сделали угол не под 90 градусов, а скошенный. Алгоритму запечки проще работать со скосами

Вот пример того, как можно скосить геометрию и повысить выразительность:

​Сравним верхнюю деталь, на которой мы сделали скос, и другие детали без скосов.

Флоатеры

Есть очень крутой лайфхак в мире моделлеров — парящая геометрия. Эта форма шейдит как единое целое:

​Шейдит как единое целое.

Но вшивать эти цилиндры в крест — то ещё удовольствие. Поэтому мы их просто поставим поверх модели!

​Геометрия висит в воздухе. Такую проще моделить, и она хорошо печется на нормал.

3. Проверяем, совпадают ли high poly и low poly

High poly и low poly должны максимально совпадать! Вот пример, когда они не совпадают:

​Если геометрия не совпадает — это нужно исправить.

Чтобы увидеть места, где high poly и low poly не совпадают, покрасим high poly в яркий контрастный цвет, а low poly — в белый:

​Места, в которых high poly выходит за переделы low poly, будут красного цвета.

Затем проверяем, совпадают ли фаски. Для этого назначим на low poly бликующий материал и сделаем его прозрачным.

4. Что учитывать при развёртке

Есть целый ряд ошибок на UV, которые приводят к проблемам на этапе запечки:

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

Чтобы этого избежать, есть несколько простых, проверенных временем рекомендаций:

Оверлапы

Если делаем оверлапы, то один элемент нужно оставить внутри первого квадрата, а все остальные куски оверлапа перенести ровно на соседний квадрат.

​Оверлапы

Харды и софты

Нормал ненавидит, когда внутри UV-шелла есть hard edge.

На нормале в таком месте будет шов.

Поэтому все эджи внутри UV-шелла делаются софтами.

​Внутри жёлтого круга не должно быть хардов, так как они будут находиться внутри UV-шелла

А внешние шеллы могут быть или софтами, или хардами.

Паддинг

Обязательно добавляем небольшие отступы между UV-шеллами.

​Обрати на жёлтые стрелки. В этих местах есть паддинг, т.е. отступ между UV шеллами

Движок уменьшает разрешение текстур, если объект находится на большом расстоянии. Чем дальше объект — тем ниже разрешение.

Важно, чтобы даже при минимальном разрешении текстуры был хотя бы один пиксель расстояния:

5. Перед тем, как открыть Marmoset

Мы уже подготовили low poly, high poly и развёртку к запечке.Но прежде чем нажимать волшебную кнопку, нужно выполнить ещё три простых действия, которые помогут нам в дальнейшем.

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

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

Нейминг в Maya

Проверяем, что нейминг внутри группы lowpoly совпадает с неймингом внутри high poly.

Например:

lowpoly -> barrel

sculpt -> zbrush_barrel

highpoly -> high_barrel

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

Удали мусор

В Maya есть полезная функция File → Optimize Scene Size, которая удаляет из сцены мусор, который нигде не используется. Это лишние слои, лишние материалы и пустые группы.

Backup

Перед запечкой создаём отдельную папку «Bake», и сохраняем туда бэкап исходного файла до начала запечки — на всякий случай).

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

6. Подготовка сцены в Marmoset

Ставим более высокое разрешение

Прежде чем делать запечку, укажем, какого размера будут карты.

Ставим разрешение карт в 2 раза выше, чем будет у финальной модели.Так часто делают в продакшене, так как текстура в 2к, уменьшенная до 1к выглядит лучше, чем текстура, сделанная сразу в 1к.

​Ставим разрешение у карт в два раза выше

Указываем, что нужно запечь Normal, AO, Material ID (=Color ID), и выбираем папку, в которую программа будет сохранять карты.

Дальше есть 2 пути

Одна из главных проблем в том, что если объекты пересекаются и пекутся как единое целое — появляются артефакты.

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

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

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

Есть два варианта решения.

Вариант 1: Разнести модель (Explode)

Это старый, проверенный временем метод.

Explode можно сделать легко в Marmoset.Просто разнесём элементы в разные стороны, чтобы геометрия не пересекалась.

​Разносим элементы модели в разные стороны

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

Обязательно следим, чтобы low poly и high poly совпадали и двигались вместе, иначе опять будут артефакты.

​Делаем Explode

Пока что рано нажимать кнопку «Bake». На этом этапе просто разносим объекты в сторону и переходим к следующему пункту: работе с Cage.

Вариант 2: Использовать группы запечки

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

​Как выглядят наши группы запечки

Первая группа — объекты, которые не пересекаются.

​Пример одной из групп запечки

Такие группы называют «группами запечки».

Вот ещё два примера:

​Ещё две группы запечки

Их крайне неудобно создавать при хаотичном нейминге. Именно поэтому я рекомендовал ещё до открытия Marmoset проверить, совпадают ли имена у всех групп внутри low poly и high poly.

Создадим группу запечки и просто перетащим туда одинаковые элементы с low poly и high poly:

​Создаём новую группу запечки, привязываем к геометрии

Более подробно про то, какие кнопки нажимать, мы сняли видео аж несколько лет назад:

Как сделать запечку в Marmoset

Cage

При выборе одной конкретной группы запечки вокруг каждого объекта появилось поле поиска high poly, которое называется Cage. Это полупрозрачная область, которая оборачивает все элементы выбранной группы.

​Полупрозрачная зона, которая слегка выходит за пределы модели — это Cage

Размер кейджа можно изменить:

​Шаг 1: включаем отображение high poly ( красного цвета). Шаг 2: меняем размер Cage

Cage определяет зону поиска информации для запечки. Всё, что не попадает в кейдж, не будет запечено.

​В этих местах кейдж не полностью закрывал high poly.

Наши задачи:

  • Покрыть всю геометрию кейджом.
  • Подобрать подходящий размер кейджа: чем меньше, тем лучше, но он должен покрывать всю high poly полностью.

Нюансы при работе с Cage

1. В этом примере, если немного увеличить cage — артефакты пропадут:

​Увеличиваем кейдж, чтобы убрать артефакты

2. Даже если сами полигоны не пересекаются, а пересекается только область кейджа, тоже будут артефакты:

В этом примере решение проблемы — сделать область cage меньше:

Мы очень любим Marmoset за удобный Cage и Paint Skew. Они значительно упрощают работу.

6. Запечка карт

Что нажать?

Нажимаем на кнопку «Bake».

В папке сразу появятся готовые PSD файлы.

Как наложить карты на модель

Дальше они загружаются в Painter и начинается этап текстурирования. Об этом поговорим в следующей статье.

Исправление косяков после запечки

Даже если сделать всё, как мы писали выше, всё равно могут появиться артефакты. Всё потому, что технология запечки — сложный процесс.

Прежде всего, нужно знать, что у нормала есть 2 разных алгоритма работы. И у обоих алгоритмов есть свои сильные и слабые стороны.

Два вида нормала

Для примера мы запекли одну и ту же геометрию с помощью Geometry и Surface Normal.

​Посмотрите на фаску и на то, как запеклась окружность

В первом случае у нас хорошо запеклась фаска, но окружность стала овалом.С другим алгоритмом всё наоборот. Разберёмся, что с этим делать.

  1. Geometry Normal
​я перепек и обновил только эти юви шеллы

Особенность алгоритма: печёт так, как будто везде софты.

Плюсы: хорошо печёт фаски и швы.

Минусы: дырки (окружности) немного растягиваются.

2. Surface Normal

Особенность алгоритма: учитывает харды и софты.

Плюсы: не портит форму у дырок.

Минусы: ужасно печёт края.

Как правильно использовать оба алгоритма

Marmoset позволяет использовать лучшее из обоих алгоритмов нормала с помощью функции Paint Skew.

​Что делает функция Paint Skew в Marmoset

Дырка исказилась при запечке и стала овальной. Мы используем другой алгоритм нормала, чтобы пересчитать её. Для этого просто выделяем эту область, используя функцию Paint Skew, и получаем ровный вырез, как было у исходной модели.

Раньше, когда такой функции не было, мы просто пекли с одинаковыми настройками Geometry Normal и Surface Normal. И уже руками с Geometry Normal брали только фаски, добавляли их на Surface Normal в Photoshop. Я как-то написал простой экшен в фотошопе, ускоряющий этот процесс до двух кликов.

Магия Photoshop

Два вида нормала — это хорошо, но и они не панацея.

​Paint Skew не всегда помогает

Иногда на модели оказываются косяки, с которыми не справиться в мармосете. Иногда нужно перезапечь небольшой кусочек модели и подмешать ее на карту в фотошопе. А иногда хочется добавить больше деталей на нормал, — в этом поможет плагин Quixel NDO.

На сайте есть подробная документация, а в интернете— ещё больше информации. Мы не будем сильно останавливаться на этой теме, так как она достаточно старая и обширная.

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

Правим артефакты в Photoshop

Итак, у нас есть артефакт, который мы хотим исправить:

Самый простой способ:

— Открыть модель в Maya, экспортировать только этот элемент.— Заново запечь его.— Затем подмазать эти детали в Photoshop.

Мы используем самые простые инструменты Photoshop: кисточки, маски, clone stamp и пластырь. И дорабатываем руками самые проблемные места, если другие способы не помогают.

Если всё совсем плохо

Переделываем геометрию — об этом в начале статьи.

Что делать с картами дальше

Итак, сегодня мы запекли нормал мап, АО и Color ID. Следующий этап пайплайна — текстурирование.

Нужно загрузить наши карты в Substance Painter:

​Загружаем карты в Substance Painter

Затем нужно запечь дополнительные карты: World Space Normal, Curvature, Position и Thickness. Их проще всего запекать именно внутри в Substance Painter. Эти карты создаются на основе нашего нормала, АО и Color ID, поэтому наличие этих карт обязательно.

​Запекаем дополнительные текстурные карты

Что это за карты — расскажем в следующей статье. А запекаются они очень просто: нажатием на одну кнопку.

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

А для тех, кто хочет пройти весь пайплайн от «А» до «Я», вместе с личным наставником сделать полный цикл своей модели и познакомиться с сотней трёхмерщиков со всей России — ещё не поздно записаться на новый поток курса Draft Punk.

Автор: Борис

Материал опубликован пользователем.
Нажмите кнопку «Написать», чтобы поделиться мнением или рассказать о своём проекте.

Написать
{ "author_name": "Игорь Дятлов", "author_type": "self", "tags": ["3","2","1"], "comments": 140, "likes": 140, "favorites": 518, "is_advertisement": false, "subsite_label": "gamedev", "id": 96898, "is_wide": false, "is_ugc": true, "date": "Sun, 26 Jan 2020 20:06:43 +0300", "is_special": false }
0
{ "id": 96898, "author_id": 158163, "diff_limit": 1000, "urls": {"diff":"\/comments\/96898\/get","add":"\/comments\/96898\/add","edit":"\/comments\/edit","remove":"\/admin\/comments\/remove","pin":"\/admin\/comments\/pin","get4edit":"\/comments\/get4edit","complain":"\/comments\/complain","load_more":"\/comments\/loading\/96898"}, "attach_limit": 2, "max_comment_text_length": 5000, "subsite_id": 64954, "last_count_and_date": null }
140 комментариев
Популярные
По порядку
Написать комментарий...
50

Примечание: нам часто говорят, что правильнее писать «запекание», а не «запечка». Мы пишем «запечка», потому что это устоявшийся термин в индустрии.

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

Ответить
1

ну почему, "запекание", как термин часто используется, это не "запечка" конечно, но все же

Ответить
8

У нас вообще все говорят "забейкать" ))

Ответить
7

Да, я тоже чаще всего слышу сочетание "бейк" в разных итерациях. Ну пару раз слышал про "запекание". "Запечка" - это когда ты что то уронил за свою печь и пытаешься достать.

Ответить
0

это то же самое , что и "перепечка", но только "за"))

Ответить
1

ох уж этот великий русский язык )

Ответить
1

ага и "отрендерить" ))

Ответить
3

вот "отрендерить" не нужно трогать )

Ответить
0

рендернУть, не надо грязи :)

Ответить
1

"обмаж недоперепечку" как бы и такое бывало, ух.

Ответить
28

Мы пишем «запечка», потому что это устоявшийся термин в индустрии. 

Первый раз слышу, никто так не говорит.

Ответить
7

Подтверждаю, ни разу не слышал, "запекание" слышал много раз, "bake" и его разные транслитерированные варианты тоже.

И к слову, "запечка" - это что, такое место, типа "подмышка" или "запазуха" ;)?

Ответить
2

И к слову, "запечка" - это что, такое место, типа "подмышка" или "запазуха" ;)?

упячка )

Ответить
1

отличный комментарий! главное, по существу!

Ответить
9

 термин в индустрии

По мнению Игоря Дятлова? Никто не говорит "а ну ка ребята, время заняться запечкой GI!".

Ответить
3

Ловушка Дятлова

Ответить
0

Текст какого-то Бориса, так что скорее его)

Ответить
8

Классика ДТФ: половина постов "А у нас так не говорят!"

Ответить
5

Тут не в граммар-наци дело.

Тут дело в том, что человек позиционирует себя как эксперта, и говорит такие вещи как «мы пишем так, потому что это устоявшийся термин в индустрии». Что является ложью, и автоматически подрывает доверие к нему.

Ниже в комментах есть очень подробный разбор от человека, который, судя по комментарию, действительно работает в геймдеве более 20 лет. И «запечка» — далеко не единственная странность в тексте.

Ответить
8

Я редко на дтф пишу но тут не удержался, так как моя сфера деятельности.

запечки - Первый раз слышу данную фразу за более чем 20 лет моделинга. Запекание, бейк, бейкнуть, запечь.

ID Map - опять же я не знаю откуда этот термин всплыл. То что автор статьи называет ID map - в рабочей среде называют картой шейдеров, или Specular Level и Color.  Это две разные карты отвечающие за цвет и материал. ID map единственное упоминание данного термина я нашёл в сабстенсе, хотя эти карты делаются за 2 минуты в фотошопе руками, что позволяет добиться большей точности, ну и самое главное это простейшая цветовая гамма РГБ. Где альфа канал это прозрачность, Красный - металлик, Зелёный - матовость, Cиний - обычно оставляют серым, так как он отвечает за насыщенность и провалы.

Normal map — это не карта неровностей, а карта высот. Так как карта нормалей содержит в себе информацию о высотах полигонов и треугольников.

Что бы не было чёрных полос при накидывание нормал мапы на лоу поли модель, надо еще сделать карту альбедо (диффуз), которая распределить затенение. А карта световых шахт, она же Ambient Occlusion, покажет геометрию запеченного света. Однако делать AO без правильного выставленного освещения, это самоубийство. Потому что готовая модель с AO, может показать совсем другой результат от ожидаемого если в движке куда будет помещена модель, другой дизайнер выставит точку света не в том месте, градусе и тд.

Печь нормаль и хранить его  в TGA или TIFF стоит только при наличии альфа канала и соответственно прозрачности. Для всех остальных случаев используется PNG иначе набор ассетов с текстурами в тифе и тга будет весить сотни гигов.

"Софт для запечки

В конечном счёте софт не важен. Принцип работы запечки во всех программах один и тот же.
"

Ошибка. Очень большая. Теория одна и та же во всех программах, но методика разная. В 3д максе в зависимости от рендер движка и шаблона (а на 1 версию программы можно поставить их около 50), будет зависеть конечный результат. Плюс 3д макс может запекать сразу 5-6 различных карт. Без точной настройки получится говно.

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

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

Опять же зависит от конкретной модели. Я согласен что кривые оверлапы создадут артефакты, но если в модели используется не текстура а заливка цветом или тайлинг, то оверлапы не учитываются. С паддингом согласен полностью, лучше не экономить пространство.

UV-шеллами. - в рабочей среде это называется острова. Islands.

"Ставим более высокое разрешение " - размер текстуры вы хотели сказать? ну да ладно можно и разрешение. Однако следовало дописать что размер текстуры не всегда стоит делать большим, во вторых в некоторых проектах есть ограничение, в третьих, размер текстуры так же зависит от плотности текселя (пикселей). Например текстуру 1024 при плотности 128 можно сделать если только это самое низкое лоу поли, если же мид-хай поли модель, то плотность 128 и больше возможна только при текстуре от 2048 и выше.

К разговору о ЮВ карте, я приложил из недавней модели свою ЮВ, Это лоу поли модель, с обязательным условием которой было разрешение 1024 и плотность 128.

Ответить
1

запечки - Первый раз слышу данную фразу за более чем 20 лет моделинга. Запекание, бейк, бейкнуть, запечь.

Я работаю с несколькими десятками людей, и как только этот процесс не называют. И ведь никто ни разу никого не поправил, мол, я такого не слышал. Удивлен, честно говоря, что тут в комментах оказалось много кому важно написание имени процесса. Великие филологи загибаются в телах 3d-шников.

ID Map - опять же я не знаю откуда этот термин всплыл. То что автор статьи называет ID map - в рабочей среде называют картой шейдеров, или Specular Level и Color.

 
 То, что автор статьи называет ID Map - ей и является. Это вспомогательная карта, которая помогает, например, при текстурировании отделить разные типы поверхностей, разные части модели, разные цвета, да вообще собственно что угодно, что художник хотел бы выделить в отдельную айдишку для своего удобства. И делать её можно как угодно - хоть запекать, хоть руками в фотошопе, хоть вообще обходиться без неё.

Однако делать AO без правильного выставленного освещения, это самоубийство. Потому что готовая модель с AO, может показать совсем другой результат от ожидаемого если в движке куда будет помещена модель, другой дизайнер выставит точку света не в том месте, градусе и тд. 

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

Печь нормаль и хранить его в TGA или TIFF стоит только при наличии альфа канала и соответственно прозрачности. Для всех остальных случаев используется PNG иначе набор ассетов с текстурами в тифе и тга будет весить сотни гигов. 

 А словосочетание "bit depth" в контексте использования TIFF вам что-нибудь говорит?

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

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

Ответить
0

Есть Color ID, есть Material ID, ID Map нету, это даже звучит странно. Я думаю, @Navier  это и пытался донести.

Ответить
0

Под айди мап чаще подразумевают весь диапазон таковых карт что вы перечислили.

https://docs.substance3d.com/spdoc/id-142213446.html

Ответить
0

ID Map это уже устоявшийся термин, прям как "запечка"... *ba-dum-tsss*
А на самом деле серьезно, в продуктах сабстанс она так и называется. И по сути это и есть Color ID, то есть некая цветовая разбивка модели, вот только к диффузу и спекуляру, упомянутым выше, она не имеет никакого отношения, и выполняет чисто вспомогательную функцию.

Ответить
–1

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

Ответить
0

ID Map - опять же я не знаю откуда этот термин всплыл.

Твоя сфера деятельности 3D и ты не слышал о ID Map? Серьёзно?
 
Например текстуру 1024 при плотности 128 можно сделать если только это самое низкое лоу поли, если же мид-хай поли модель, то плотность 128 и больше возможна только при текстуре от 2048 и выше.

Вот этим предложением ты мне реально мозг сломал. Можешь как-то подробнее пояснить?

Ответить
1

Имеется ввиду разрешение текстуры и плотность текселя. Непонятно, правда, в чем подразумевается измерять плотность (пиксели на метр, пиксели на дюйм?), а так же причем тут плотность сетки, если тут бОльшую роль будет играть размер меша и его геометрическая сложность. Если в ТЗ стоит плотность текселя 128 пикселей на метр (что, кстати, довольно-таки мало), то в текстуру 1024х1024 с такой плотностью войдет меш с площадью поверхности менее 16м², что опять же неочень много, хватит например на какой-нибудь средненький предмет интерьера.

Ответить
2

а так же причем тут плотность сетки, если тут бОльшую роль будет играть размер меша и его геометрическая сложность

Так и я о том же.  Важен размер объекта и площадь его поверхности, а плотность сетки играет второстепенную роль.

Ответить
–2

Попой читаем?

"Твоя сфера деятельности 3D и ты не слышал о ID Map? Серьёзно?"

Я же написал термин ID map пошёл от сабстенса, но по сути это карты диффуза и спекуляра.

"Вот этим предложением ты мне реально мозг сломал. Можешь как-то подробнее пояснить?"

https://habr.com/ru/post/315146/

https://blender3d.com.ua/texel-density/

Ответить
2

Еще раз вам отвечу, если вы предпочитаете минусить вместо того, чтобы разобраться - ID карта не имеет никакого отношения к спекуляру и диффузу, это вспомогательная карта для условного разделения меша на разные области, и удобства их выделения при текстурировании. И используется она не только в сабстансе.

Ответить
–1

Вообще то имеет.

Color id map - раскрашивание цветом отдельных сторон(частей),островов используя RGB слои.

1 цвет = 1 вертекс.

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

Альбедо - он же диффуз, делает абсолютно тоже самое, вычитывая вертексную длинну волны, и даёт отражающую способность. Другими словами решает где по какому из RGB каналов будет какой цвет.

Спекуляр (цвет) - отвечает за отражение и глубину цвета. Используя те же ргб каналы.

Обьеденив спекуляр с альбедо - получим ID map.

И да, я проверил ради интереса создание Color id map в сабстенсе, люди создают эти карты именно так как и создаются спеки и альбедо.

Матчасть учите.

Ответить
0

Я-то матчасть знаю. А вам следовало бы гонора поубавить и поизучать то, чего не знаете. Потому что видно, что у вас есть опыт, но вы в упор не понимаете, о чем пишут вам.

И ради интереса еще раз посмотрите не как рисуют, а для чего-же все-таки используют именно ID мапы. Или перечитайте еще раз два моих комментария на эту тему, в которых я вам писал, что это вспомогательная карта. Если вы не понимаете, что это значит, поясню - она не участвует в рендере. Никак. Вообще. Это не спекуляр, не диффуз, и не результат их объединения. Это цветовое обозначение отдельных элементов для простоты их выделения и работы с ними. Это карта, которая существует просто для удобства художника и никак не видима в конечном результате. Надеюсь, так понятнее. И замечу, что написанное в статье этому никак не противоречит.

Ответить
0

Читаю я как раз-таки глазами.

 > ID Map - опять же я не знаю откуда этот термин всплыл.
Термин который активно используется уже лет 5 минимум, и ты в 2020 удивляешься его использованию. O_o
Как минимум он встречается в Quxel, Substance, Knald и никакого отношения к картам шейдеров не имеет.
это карты диффуза и спекуляра.

Это не карты диффуза и спекуляра. ID Maps (или Material ID Maps) — это просто цветовая индикация разных элементов модели (т.е. сугубо вспомогательная карта) для упрощения процесса назначения различных материалов и создания соответствующих масок.
https://docs.knaldtech.com/doku.php?id=material_id_maps_knald_1.1

Ответить
–1

Как минимум он встречается в Quxel, Substance, Knald

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

Ответить
0

Ну как бы тема посвящена игровым моделям, а использование ID Maps в геймдеве и кино это уже индустриальный стандарт. Причём тут крупные предприятия да еще и на постсоветском пространстве?

Ответить
–1

Не спорю что посвещена игровым моделям, но 90% моделлеров на постсоветском пространстве работает не в геймдеве и уже темболее не в кино. Да и в кино никто сабстенсом не пользуется честно говоря. Там свои аналоги есть из-за специфичных рендер движков типа Рендермана и Райса.

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

Ответить
–1

Во-первых, Substance используют в кино
https://www.substance3d.com/industries/film/
Во-вторых ID Maps точно также используются в Mari (который был разработан для кино). Их вообще можно использовать где угодно, поскольку это всего лишь вспомогательная карта используемая на стадии производства.

материалы сделанные в сабстенсе не подойдут.

Substance позволяет выводить материалы в виде набора карт, так что нет никаких проблем с его использованием в самописных движках. Более того он позволяет использовать сторонние шейдеры так что проблема взятя с потолка.
90% моделлеров на постсоветском пространстве

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

Update. По поводу RenderMan и прочего

https://renderman.pixar.com/substance-to-renderman
https://docs.substance3d.com/integrations/substance-integrations-149291160.html

Ответить
–1

Причём тут реклама сабстенса и реальное положение дел?

Второе запихни материалы сабстенса в Unigine или Компас, и посмотрим как они встанут. Ответ: никак.

"Ой можешь дальше не продолжать. .."

Вся суть. Как только заканчиваются аргументы, начинается Ой всё.

Ответить
–1

реальное положение дел?

Ну да всё это реклама, а интеграция Substance с RenderMan это всё иллюзия.

Второе запихни материалы сабстенса в Unigine или Компас

Вот пример использование Substance Painter в связке с Unigine...и?
https://80.lv/articles/building-racers-shelter-in-unigine-001agt-002mrs-003qxl/
В Компасе не работал и я даже не знаю есть ли там модуль визуализации. В любом случае это в первую очередь пакет для проектирования а для визуализации можно использовать любое другое приложение.
Как минимум то что его поддерживают Catia и VRED уже круто.
Как только заканчиваются аргументы, начинается Ой всё.

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

Blade Runner тоже наверное в paint нарисовали,а  теперь нагло врут что Substance использовали.
https://store.substance3d.com/blog/blade-runner-2049-s-oscar-winning-texturing-workflow-framestore

P.S. Напомню, что всё началось с того что ты тупо не знаешь что такое ID Map и для чего их используют.
P.P.S Раз ты не можешь адекватно вести диалог и тупо тыкаешь кнопку «-», я отвечу тем же. 

Ответить
1

Ну вы нагородили конечно, видно что разбираетесь, но оперируете какой то странной инфой будто ей как раз вот 10-20 лет. Представления об АО как если вы делаете какие то хендпеинтные игры и мобилки(старые). Никто не выставляет никакой свет на pbr, все пекут ао с гибко настроенного кейджа, эта информация крайне важна для pbr текстурирования в сабстенсе, квиксиле и мари. По ао(и остальным картам) все процедурные генераторы и комплексные материалы кладут грязь потертости ржавчину и прочее, чтобы вам не пришлось делать это руками.

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

Ответить
0

резко перехотелось в xyz после вашего комента 

Ответить
–1

Незнаю, как там в xyz, но вы перечитайте эту ветку комментариев. Я б не был так категоричен ) Человек имеет багаж знаний, но не хочет признавать, что он не во всем верен и не везде применим. "20 лет моделирования" my ass. А статьи предыдущие и эта хотя-бы направлены именно на тех, кто не в теме, но стремится.

Ответить
0

Это уже не первый такой отзыв про xyz
И часть из его аргументов( и еще куча под этой статьей) 
показывает что не все чисто  

Ответить
0

Хз, тут большая часть просто докопались до столба с "запечкой" ) Я сам, работая в геймдеве, ничего категорически неверного в статье не наблюдаю. А насколько углубленно и качественно этому обучают - это лучше спросить у тех, кто у них обучался, а не у комментаторов.

Ответить
0

 карта нормалей содержит в себе информацию о высотах полигонов и треугольников

Не содержит и даже называется картой нормалей, а не высот.

Ответить
6

​>Гугл на слово запечка показывает то, что нам нужно

Т.е. вы искали видео, где таки "запекание"?
а на слово запекание предлагает запечь курочку

А почему не искали на более логичное "запекание текстур"?

В итоге:
"запекание текстур" - 283 000 результатов
"запечка текстур" - 53 800

Ответить
2

Кстати, при поиске на "запечка текстур" ваше это слово так и не было встречено ни на одной строке, ни в Гугле ни в Яндексе.

На "запечка" есть только то самое видео на Ютюбе.

Ответить
4



 нам часто говорят, что правильнее писать «запекание», а не «запечка». Мы пишем «запечка», потому что это устоявшийся термин в индустрии.

Никто кроме вас слово «запечка» не говорит. А если в Google вбить запрос «запечка текстур» он автоматически исправляет на «запекание текстур».

P.S. Хотя что вам говорить, если вы даже название ZBrush умудряетесь писать с ошибкой :) Только не надо говорить что это очередной, гениальный рекламный ход.

Ответить
4

это видать чуваки со скиллбокса или хуз
которые разводят лохов на бабки, предлагая стать «аниматором/моделлером/маркетологом» и «сразу получать от 70 000 рублей в месяц»

ненавижу, сука, инфоцыган

Ответить
3

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

Ответить
4

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

Ответить
0

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

Ответить
0

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

Ответить
2

 нам часто говорят, что правильнее писать «запекание», а не «запечка». Мы пишем «запечка», потому что это устоявшийся термин в индустрии.

Не надо выдумывать.

Я 12 лет работаю в геймдеве. Первый раз в жизни слышу, чтобы говорили «запечка». Всегда говорили «бэйк» или «запекание». 

Ответить
1

Всю эту словесную шелуху лучше перевести в 5 минутный видеоролик по запечке хай поли в лоу поли, как делают индусы в Ютубе.

Ответить
0

Ну да,потому что различия нет и ценность такая же.)

Ответить
0

У людей всегда будет достаточно времени на большие гневные комментарии к чужой статье, но никогда не будет времени чтобы написать свою "идеальную" статью. Как сказал один мудрец: "В нашей стране за 20 лет меняется всё, за 200 лет ничего!"   )))

Ответить
–2

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

Очень дешёвая провокация. Напишите «идеальную» статью. Ага вот сейчас все дружно возьмут и в порыве альтруизма начнут писать качественные и подробные статьи.  Чтобы потом всякие инфоцыгане из XYZ их потрошили и коверкали как им угодно? Ага!
Люди которые знаю цену знаниям никогда не будуи ими разбрасываться.

P.S. И да, раз ты любитель ставить минусы куда попало, можешь смело идти на хуй.

Ответить
1

В вашем профиле 180 комментарий и ни одной статьи! Все что вы умеете это хейтит труд других людей. Плохое всегда легко найти, на это много ума не нужно, а вот выделить что-то хорошее, найти положительный момент, на это нужно иметь богатый внутренний мир и чувство прекрасного, и для этого нужно быть трудолюбивым, потому что только самому поняв как тяжело создавать что-либо качественное, можно по достоинству оценить труд других людей. К сожалению в нашем мире больше разрушителей, чем созидателей. 
P.S. Мне вас жаль одним словом.

Ответить
0

Все что вы умеете

В Вашем профиле 14 комментариев и ни одной статьи. Всё что вы умеете — это бездумно  тыкать кнопочку «+» или «-». Еще у Вас имеются отличные задатки жополиза, так что в жизни вы устроитесь очень хорошо...  Ну как, нравится аналитика подобного уровня?
То что вы тут называете работой — это банальный рерайт и компиляция из целой кучи западных статей, т.е. паразитирование на чужой работе, с единственной целью — РЕКЛАМА курсов и школы.
И вот именно такие люди как раз таки и далеки от творчества — всё что их волнует это ваши деньги.
Может у меня не такой богатый внутренний мир как у Вас, зато у меня хватает ума объективно оценивать увиденное. Если работа сделана качественно и с душой, я никогда не скажу про неё ничего плохого.
По поводу написания статей... Даже если у меня вдруг возникнет такая потребность, я сделаю это на профильном ресурсе или на своей страничке.
Прежде чем рассуждать о созидании и разрушении предлагаю самому сделать что-нибудь стоящее.

Ответить
0

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

P.S. Да прибудет с вами сила созидания и добра! 

Ответить
0

Поясните пожалуйста следущее:

Есть лоу-поли, есть UV у лоу-поли и есть хай-поли без UV.
Каким образом запекаеются карты с хай-поли, у которой нет UV и переносятся на лоу-поли с UV? Как переносится 3д пространство с хай-поли модели в 2д пространство без UV?

Ответить
1

почитай эту статью, там очень детально объясняется процесс, как происходит перенос детализации. да и вообще что такое виртуальные вертекс нормали https://vk.com/@xyz_gamedev-statya-pro-setku

Ответить
0

я читал эту статью. Ответа на вопрос не нашел.

Ответить
6

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

https://developer.nvidia.com/gpugems/gpugems3/part-iv-image-effects/chapter-22-baking-normal-maps-gpu

Ответить
1

Спасибо.

Ответить
2

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

Ответить
0

Многие прогуляли в школе геометрию как я посмотрю :) 

Ответить
1

ну это не школьная программа справедливости ради, а одна из дисциплин целого университетского направления САПР все же

Ответить
0

Возможно моя память играет со мной шутки и первый курс матанализа на кафедре физики у меня перемешался с геометрией последних классов школы . Однако все термины в голове имеются . 

Ответить
0

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

Ответить
0

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

Ответить
1

А зачем тебе юв на хай поли?  Тебе нужны Юв на лоу поли . 

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

А так логика запекания проста : две модели ставиться в одних координатах и с хай поли проецируется карта высот на лоуполи. Под ними 

Ответить
0

Я интересуюсь принципом запечки, а не методами, которыми можно запечь карты с хай на лоу.

Мне непонятно, как с хай-поли модели без UV можно снять 2д карту. Что именно транслирует 3Д пространство хай-поли в 2Д пространство и почему?
Насколько я понимаю, без UV ты не можешь положить текстурную карту на 3д модель. Соответственно отсюда и непонятка у меня: как без UV можно снять карту с модели.

Ответить
2

Так это же просто Нормал МАП . Показывает длину нормалей (перепендикулярных отрезков) до  координаты ветексов. 

Все что тебе нужно это плоскость ЮВ и вертекс хай поли . 

Ответить
1

Если коротко, то с хайполи берется только сама форма геометрии. UV хайполи не нужна. Собственно для этого хайполи и делают - промоделить все детали геометрией.

Ответить
0

спасибо.

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

Ответить

Комментарий удален

0

нет, не забанили. Я читал и смотрел всякого про запекание. Всегда натыкался на разговор о методах, о практической стороне применения, не о теории, не о принципе.

Ответить

Комментарий удален

3

Что ты такое?

Ответить
0

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

В итоге получил карту со скруглением как и надо, но с швом по середине фаски. В течении недели искал инфу как это править на этапе запекания, но ничего так и не нашёл.

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

¯ \ _ (ツ) _ / ¯

P. S. Рекомендую также этот сайт - http://mrven.ru/
Конкретно про нормали здесь - http://mrven.ru/301-normals-bake-basic/

Ответить
1

Точно так же знакомился с запеканием нормалей. Хайполи куб с фасками. Первые несколько итераций получалась лажа, но с какой-то попытки вышло. Ты просто мало пробовал)

Я не 3д-моделер, но, чисто субъективно, запекание карт - самая геморная часть hard surface моделирования. Куча нюансов, о которых нужно думать еще на этапе создания хайполи модели. Так и не научился запекать удачно с первого раза. Иногда приходилось склеивать удачные части карты нормалей между собой в фотошопе. 

Ответить
0

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

Ответить
0

можно еще мармосет попробовать, он то же не плох

Ответить
0

Наверное . Мои знания устарели лет на 7 . Я щас художник а не 3 д моделер . 

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

Ответить
1

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

Ответить
0

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

Ответить
0

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

Ответить
0

> В течении недели искал инфу как это править на этапе запекания, но ничего так и не нашёл.

Юзай cage и будет тебе счастье. Ну либо включи smooth shading на лруполи кубе и пеки без cage, тоже будет ок.

Ответить
0

Тоже пробовал.

Ответить
1

Тогда забей. Не твое это. Особенно если за целую неделю не смог нагуглить решение.

Ответить
1

Нет, когда-то я сделаю это. Я упрямый)

Ответить
1

Хули там делать? Если лруполи куб с флэт шейдингом: делаешь развёртку с симами по всем рёбрам и печешь с кейджем. Если смус шейдинг: делаешь развёртку как угодно и печешь без кейджа. Все, никаких швов не будет.

Ответить
0

Ладно. Сейчас попробую.

Ответить
0

Фаску надо было сделать.

Ответить
0

А без фаски никак? И почему? С фаской я уже делал - само собой получается.

Ответить
0

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

Ответить
0

Это я для себя хочу добиться. Не для мобилок и прочего. Просто хочу сделать. Или понять почему нельзя.

Ответить
2

Математика потому что , Запекание происходит за счёт проецирование лучей со всех сторон на лоу поли Модель . А если у тебя грани лоу поли  повёрнуты под углами 90 градусов — то на стыке получается несовпадение при проецирование

Ответить
0

Это я тоже вроде как понимаю. Просто ищу способ обойти этот косяк ещё на этапе запекания без усложнения геометрии лоупольки.

Ответить
1

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

Ответить
1

Ну, с фотошопом я тоже пробовал. Хотелось бы сразу на месте, с использованием печки Blender'а. Есть также идея попробовать запечь на одну грань low-куба с одной грани с фасками high-куба, а после использовать данную нормаль на все грани low-куба - т.е. одна UV на все грани. Но пока не было времени попробовать.

Ответить
–1

Надеюсь ты случайно не из блендер фанатиков которые считают что есть только блендер а все остальное — ерись?:)  

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

Ответить
1

Про топоган впервые слышу, зибраш платный, сабстанс тоже платный, крейзибамп видел, но использовал его только для формирования нормал мапов из картинок, не слышал, что он ещё и с геометрией работает. Хотя и крейзибамп тоже платный. А если блендер умеет что-то запекать, то почему бы и не запекать нормали? Или я чего-то не понял?

Ответить
0

И даже фотошоп и тот платный . Но ... кого это если честно останавливает?! 
Йохохо и бутылка рома . 

Вот когда ты будешь зарабатывать в этих программах — вот тогда можешь их и купить . 

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

Ответить
2

Блендор жрет и по 20 лямов поликов. Просто почему-то если блендер, то динотопо, а если зебра только ремеш, ага. В блендоре сейчас тоже есть ремеш :)

А браш прямо пропорционален кол-ву рама в своей скорости. 

Ответить
–2

У Blender'а есть один существенный недостаток — он очень медленно импортирует «тяжелые» файлы.  Например, импортируем тестовую модель в 25 000 000 треугольников:

Blender  3 минуты 12 секунд
Keyshot  56 секунд
Maya 42 секунды
Zbrush 27 секунд

Ответить
0

А причем тут скульпт? О_о Понятно, что у него свои провалы есть. 

Ответить
1

Ну, я не в фотошопе работаю, а в GIMP - он open-source. Не хочу пиратить программки. И обычно эти узкоспециализированные программы платные, а хотелось бы бесплатные для себя, т.к. на этом не зарабатываю, т.к. это лишь как небольшое хобби. А модели у меня за кучу лямов поликов не выходило, т.к. не профессионал и не художник, которые прорабатывают детали.

Ответить
0

Значит все таки религиозные убеждения :)))

Просто используя сборку из Как минимум 3 х програм : 

Zbrush - blender - substense painer 
Ты будешь получать нужный в хобби результат раз в 5 быстрее . Чем в одном блендере . Но время личное твоё тебе его и тратить . 

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

Ответить
1

Не очень понял про религиозные убеждения)...

Сам к Гимпу долго привыкал, ещё со школы - там у меня был Linux. Криту пока ещё не пробовал, но наслышан.

Ответить
0

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

Ответить
0

Ты харды прокидывал?(в статье об этом пишут)

Ответить
0

Вроде нет, не знаю зачем они в моём случае. Если я понял о чём ты)... Но лоу-модель обычно всегда сглаживаю, а места-рёбра, которые должны оставаться несглаженными, помечаю как жёсткие (Make Sharp - и грань становится голубым цветом. Использую Blender). В запекании нормалей эти жёсткие рёбра учитываются.

Ответить
0

Ну вот я быстро запек нормаль на обычный куб без фасок и прочего. Справа хайполи.

Ответить
0

А в какой программе запекал?

Ответить
0

Это Модо. Там очень удобно. Можно просто создать специальный bake item, в который закидываешь нужные меши и указываешь куда печь.

Но суть не в этом. Как ты разворачивал куб? Он у тебя был стандартной развертки(т образной) или ты каждый полик отдельно разрезал?

Ответить
0

Ну, я Модо не использую, а использую лишь Blender.

Пробовал разные развёртки - и т-образную, и крестом, и по отдельности.

Ответить
1

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

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

Ответить
0

Серьезные ассеты я бы не стал печь в блендере. Там мало самих видов карт для выбора и нет antialiasing сглаживания и некак запечь альфу.

Ответить
0

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

Ответить
0

Т.е. фаски нормалями на перпендикулярных рёбрах вообще нельзя сделать? Или я не так понял?

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

Ответить
0

Между гранями, которые сглаживаешь должен быть тупой угол. Т.е. >91 градуса.

Ответить
0

Познавательно.

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

Ответить
0

Благодарствую.

Ответить
0

Еще не читал всю статью, но касательно запечки скажу, что сам обычно говорю bake, т.к. графике учился по иностранным туторам. По той же причине фаски зову бевелами:)

Ответить
0

да ты еще и наметание как sweep произносишь видать?

Ответить
0

А что такое наметание?)

Ответить
1

хм... память дала сбой (простите, это я больше 10ти лет назад проходил на парах), "заметание", а не "наметание" 

Ответить
0

Я конечно не спец, но как понимаю заметание это в основном частый термин из КАД, а люди обычно называют это так как называется тулза. То есть sweep loft итд, лично меня в универе максу учили в таких терминах оригинальных на английском, и даже поясняли что если в будущем сменится софт чтобы я не «терялся» и понял суть .

Ответить
1

и да и нет, к примету аглгоритм sweep line, по русский будет алгоритм заметающей прямой, просто отечественная версия того же sweep, ну и да, в CAD/CAM/CAE пакетах это будет sweep инструментом, к примеру в риноцерос sweep 1-2 rail то же будет построением поверхности через заметание (точно уже не припомню как правильно по русский будет), шито поделать, вычислительной геометрией меня учили на русском, как и всем остальным дисциплинам и как оказалось у всего есть русский аналог, к примеру шейдер по гуро, будет правильней назвать закраской по гуро, хотя конечно были исключения, к примеру BRDF конечно двулучевая функция отражательной способности (ДФОС), но на парах частенько использовали именно BRDF

Ответить
0

Я не ни в коем случае ничего не навязываю и даже хорошо что у всего есть русский аналог. Но скажем так в индустрии хороший тон это все таки пользовать и говорить в ~англ терминологии. К примеру если у тебя лид или заказчик будет иностранный, что вообще чаще всего и бывает на аутсорсе. Или туторы к новым фишкам почти всегда на англ. В общем себе жизнь упростите, но я никак не хочу вам мешать идти сложными путями, если все ок идет то ради бога.

Ответить
1

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

Ответить
0

"Запечка" это просто ад, ору. Еще и запечь не смогли нормально, кейджи и артефкты омг

Ответить
0

добавивших в закладки больше чем лайков

что бы это значило хммм...

Ответить