Это старая версия документа!
Нормали и карты нормалей
Эта статья описывает, как правильно создавать карты нормалей в различных ситуациях, а также распространённые проблемы при генерации и импорте в игру.
Генерация нормалей
Перед тем как решить, нужно ли инвертировать один из каналов карты нормалей, убедитесь, что ваш генератор нормалей не делает этого по умолчанию.
Некоторые генераторы позволяют настраивать инверсию красного (x) и зелёного (y) каналов, но часть из них всегда инвертирует красный канал.
Стандартная карта нормалей без инверсий выглядит так, будто она освещена сверху справа:
- Красный канал — освещение справа (ось X)
- Зелёный канал — освещение сверху (ось Y)
Это соответствует стандарту: освещение с положительных направлений X и Y.
Импорт мешей и вращение
Функция поворота в редакторе ассетов сломана — она создаёт некорректные тангенты, из-за чего карты нормалей отображаются неверно или вообще не работают.
Чтобы использовать поворот без ошибок — установите мод Mesh Import Rotation Tangents Fix.
Ассеты
Для стандартных ассетов (здания, предметы, машины, деревья, жители) нормали работают корректно, если использовать неинвертированные каналы, как указано выше.
Сетевые объекты (Networks)
- Для граней, окрашенных в пурпурный цвет (vertex paint) — нормали работают стандартно, как и для обычных ассетов.
- Для граней без пурпурной раскраски (автоматическая плитка, как у дорог и рельс) зелёный канал необходимо инвертировать.
Ассиметричные сетки
Если вы создаёте асимметричную сетку для сети, применяется флаг инверсии сегментов.
Это приводит к тому, что зелёный канал нормали будет инвертирован через один сегмент.
Решение — создать две разные сетки для сегментов:
- одна с обычной нормалью
- другая — с инвертированной, либо с отражённой геометрией

