И так, попробуем разобраться с тем, что вы хотели знать о нормалях, но боялись спросить.
Я не буду описывать теорию карт нормалей и их запекания, просто дам пару ссылок чуть позже. Показывать куда ткнуть мышкой, чтобы получилось красиво, тоже не буду - видеотуториалов очень много.
Для запекания нормалей не нужно обладать талантами или какими то глубокими знаниями. Даже наоборот, весь этот PBR придуман для того, чтобы любой человек, едва научившись читать, мог делать 3Д и текстуры высокого качества. Вопрос только в потраченном времени. Для меня вполне очевидно, что для человека, производящего 3Д контент, лучше посредственно уметь запекать и генерировать текстуры, чем хорошо рисовать или работать с фототекстурами. Но на этом пути PBR есть множество нюансов и особенностей, которые зачастую не очевидны, но позволяют экономить нервы, время и получить вполне приличный результат. Конечно, я тоже мало чего знаю и умею, но небольшой опыт у меня есть, что-то я продумывал сам, что - то советовали опытные товарищи, что - то я читал. Потом осмыслял и применял. И чуть позже я покажу эти моменты, чтобы другим было проще освоить эти технологии. Может быть и вы сможете поделиться своими наработками.
Что касается теории - почти всё написано здесь: http://render.ru/books/show_book.php?book_id=3033
В общем - тут наиболее полное описание на русском языке с кучей примеров, с разбором ошибок.
Есть ещё полезная статья о лоуполи моделировании вообще и запекании нормалей в частности: http://render.ru/books/show_book.php?book_id=3790
Если совсем кратко. Мы создаём игровую лоуполи модель с UV развёрткой, затем из неё делаем хайполи модель. Для неё UV развёртка не требуется. Затем запекаем на лоуполи модель карту нормалей с хайполи модели. Таким образом, нормали полигонов лоуполи модели заменяются на нормали с хайполи модели, что делает нашу игровую модель более сглаженной. После запекания карты нормалей, мы можем эту карту отредактировать, добавив, например, заклёпки или болты. Затем применяем эту карту нормалей к нашей лоуполи модели и запекаем с неё ambient occlusion map (АО - карта затенения), cavity map, curvature map - последние две карты не идут в игровой движок, а являются вспомогательными для программ процедурного текстурирования типа substance painter или quixel DDO. Да, ещё уточнение - я говорю только за моделирование техники. Растительность, одежда и прочее имеет свои особенности, но я этого не знаю
Добавлено спустя 26 минут 7 секунд:
И так - первый момент. Зачем вообще нужно запекать карты нормалей? Для техники - это визуальное сглаживание острых углов, имитация фасок. Модель приобретает вид, близкий к хайполи модели.
Посмотрим, как это выглядит
Итак, есть модель колёсной пары для ужд. Модель сделана по чертежу
Модель имеет 1316 треугольников. Кстати именно количество треугольников, а не полигонов имеет значение для игрового движка. В общем, моделька средняя по детализации.
Вот её вид без подсветки ребер. Конечно можно переназначить группы сглаживания, но мы не будем этого делать.
Как видно по чертежу, колесо цельнолитое с плавными закруглениями, с отсутствием ярко выраженных ребер.Так же есть фаска по линии сопряжении боковины обода с беговой поверхностью. Это как раз тот случай, когда карты нормалей сильно нам помогут
UV развёртка:
Дальше делаем заготовку хайполи модели под турбосмус. Подробности будут позже:
Ну и применяем модификатор турбосмус с 4-мя итерациями:
Моделька хороша, на миллион треугольников колёса. Здесь размер фасок увеличен против реальных, но в игровых движках фаски будут выглядят обычно меньше чем в максе.
Дальше запекаем с красивой модельки карту нормалей и применяем её на игровую модель:
Как видим, наша первоначальная моделька на 1316 треугольников похорошела
Именно сглаживание модели и является основной целью запекания карт нормалей с хайполи моделей. Второстепенные цели - повышение детализации дополнением заклёпок, болтов, выштамповок, имитации фактуры литых деталей и прочего, хотя часть из вышеперечисленного проще рисовать на карте нормалей. За сим пока всё. Позже разберу по шагам как это всё делалось.