Blender: Создание карты нормалей

Чтобы не нагружать GPU расчетами сложных моделей, состоящих из множества деталей, можно создать меш с меньшей детализацией, но потом применить к нему специальную текстуру — Normal map (Bump mapping).

Карты нормалей являются разновидностью «карты выпуклостей» (Bump Map). Они позволяют добавить освещаемой поверхности такой тип детализации как выпуклость, канавка, или царапина.

В этих текстурах хранится не цвет каждой из точек, а информация об отклонении нормали в значениях X, Y и Z (X и Y — координаты, а Z — высота).

Теория по карте нормалей с сайта Unity.

Создать подобную карту нормалей можно самостоятельно, используя Blender.
1. Добавим на плоскость «Plane»
2. Дублируем ее (получается «Plane.001»)
3. На поверхность «Plane», в режиме редактирования добавляем торус.
4. Уменьшаем его в 2 раза: S -> 0.5 -> Enter :
Blender27-NormalMap01

Сейчас для этого меша получилось 580 вершин и 1154 треугольника!

 

5. Делаем UV-развертку «Plane», в окне UV Image Editor создаем новое изображение Plane_nrm
6. Теперь нужно расположить Plane.001 НАД Plane.
7. В Outliner сначала выбираем Plane, потом, удерживая Shift , выбираем Plane.001, т.о. активной будет вторая плоскость!
8. Теперь нужно в окне Свойств перейти на вкладку Scene, выбрать Bake Mode = Normals и поставить галочку Selected to Active, после чего нажать кнопку Bake:
Blender27-NormalMap02
9. Получается так:
Blender27-NormalMap03
10. Если теперь перенести эту плоскость с установленной текстурой в Unity, то при изменении направления освещения, текстура будет меняться:
Blender: Создание карты нормалей
и
Blender: Создание карты нормалей

Видео-урок (с сумасшедшим зумом камеры) по созданию карты нормалей: