Выход Doom 3 был заметным событием в истории компьютерных игр, он был создан на самом инновационном, для того времени, игровом движке id Tech 4.
Особенно всех поразило использование Bump Mapping - эффекта рельефной поверхности с детализацией большей, чем позволяет полигональная поверхность.
Сама карта Bump представляет собой графический файл в оттенках серого цвета. Чем светлее участок, тем сильнее он выдавлен вперед, чем темнее – назад.
Normal Mapping– более продвинутая технология, рожденная от Bump Mapping.
Использование Шейдер Normal Maps в Unity
Запустим Unity 3D и создадим новую сцену.
Добавим в сцену объект Куб (Cube), GameObject->Create Other->Cube, с параметрами Transform в окне Inspector:
Добавьте Directional light, GameObject->Create Other-> Directional light, с параметрами Transform в окне Inspector:
И Main Camera по умолчанию.
1. Создайте папку Material в окне Project и загрузите туда рисунок будущей текстуры.
Затекстуируем наш Куб в окне Scene:
3. Теперь нам надо создать рисунок, который послужит картой высот в Normal Map. Более темные участки будут углублениями, светлые - выступы:
Сохраним рисунок под именем "bump" в папке Material проводника Project, рядом с текстурой textur.
Выберите bump и включите Normal Map в вкладке Texture Type окна Inspector. Нажмите клавишу Apply:
Выберите объект Cube. В поле Shader вкладке texture окна Inspector, в ниспадающем списке выберем Bumped Diffuse:
Перетащим текстуру bump из окна Project на серый квадратик с надписью None(Texture) окна Inspector:
Окончательный результат: