Normal Map — это текстура, контролирующая направление отражения света. Используется данная технология для создания высокодетализированных низкополигональных моделей. Необходима для визуализации относительно сложных объектов в компьютерных играх без потери качества.
Немного теории
Для создания карты нормалей необходимо иметь высокополигональную и низкополигональную модель. Во время создания текстуры информация из высокополигональной модели интерпретируются в цветовую составляющую RGB, где [r,g,b] соотносятся с осями [x,y,z]. Соответственно красный цвет (R) отвечает за координату X, зеленый (G) за координату Y и синий (B) за Z (высоту).
Вы можете создать модель состоящую из миллиона полигонов, а затем создать такую же (визуально и под определенным углом), но состоящую всего из двух полигонов.
Создание Normal Maps в Blender
Возьмите любую высокодетализированую поверхность. Для примера, я буду использовать плоскость, на которой расположено несколько простых геометрических объектов. Как видите, она состоит из 8234 треугольников.
Теперь создайте плоскость таких же размеров и расположите ее над высокодетализированым объектом:
Разделите окно 3D вида на две части и в левой выберите UV/Image Editor. Создайте в нем новое изображение с настройками по умолчанию (я только имя указал).
Выделите Вашу плоскость, перейдите в режим редактирования и создайте для нее UV-развертку:
Выделите Вашу высокополигональную модель, а затем удерживая Shift низкополигональную. На вкладке Render в самом низу у Вас находится меню Bake. Выставите для него следующие настройки и нажмите кнопку Bake.
По завершению процесса запекания, у Вас в окне UV/Image Editor должна появится текстура карты нормалей. В моем случае она выглядит следующим образом:
Вот собственно и все!
Чтобы увидеть результат работы данной техники, на панели свойств включите режим отображения GLSL и включите режим отображения текстур:
Теперь создайте для плоскости новый материал с настройками по умолчанию, затем перейдите на вкладку текстур и выставите следующие настройки:
Можете выбрать лампу, перемещать ее в 3D пространстве и видеть, как свет создает тени на плоскости так, как будто-то это вовсе не плоскость, а высокополигональная модель :)
интересно, спасибо! вообще, текстуры — это очень полезно
Пожалуйста!
Скажите, а нужно ли использовать нормали для сокращения времени рендера высокополигональных объектов (для анимации) или нет? И будет ли заметен в итоге такой «обман»?
Нужно!
Будет! (но иногда, можно и скрыть)
Ну т.е. если время позволяет, лучше не делать создание и перенос нормал карт на лоуполи модель, а просто рендерить в максимальном варианте все же? Для СG роликов, имеется ввиду)
Да норм тeмa, я тaм рабoтаю, толькo зaчeм всем рассказывaть тaкое?, и тaк кoнкурентoв пруд пруди.
Да норм тeмa, я тaм рабoтаю, толькo зaчeм всем рассказывaть тaкое?, и тaк кoнкурентoв пруд пруди.
Спасибо . Артем подскажите пожалуйста где можно купить модели для игр-Качественные (кон тент). На сайте блендер украйна выложены коллекции материалов.Или искать по картинке гуглом ;) Спасибо молодцы.(:smile:)
Есть около 10 зарубежных 3D-стоков. 3 из них точно толковые. Названий не помню, поэтому гугл Вам поможет (:smile:)
В этом году на этом сайте также появится сток. Будем заполнять пробелы.
здорово! спасибо!
Спасибо Артем ВАМ за эти уроки. Я где то видел что текстуру с картой нормалей можно создать в Gimp из обычной текстуры. Вы знаете что-нибуть об этом? Как это работает? Спасибо.
Нет, с Gimp я знаком лишь поверхностно.
Я пользуюсь программой Crazy Bump. Она бесплатная и есть под Mac, что мне очень важно-) Там можно из обычной текстуры сделать все остальные — спекулар, бамп и нормал мап.
Она на Маке — бэта, поэтому и бесплатная. На ПиСи — платная.
Я пользуюсь вот этим аддоном:
https://code.google.com/p/gimp-normalmap/downloads/list
Чтобы сделать там normalmap, нажми пкм, далее следуй так:
Фильтры>карты>normalmap
советую побаловаться с настройками, для наилучшего результата(:smile:)
Спасибо за полезный аддон!
Спасибо Артем за статью. Вчера очень пригодилась )
Cycles я так понимаю запекание текстур не поддерживает?
Запекание в интернальном рендере, а дальнейшая работа в cycles.
Пока нет, но над этим работают (:smile:)
Спасибо за урок, пригодилось) Артем, а как использовать текстуру вместе с картой нормалей в Cycles и итёрнал?
Просто смешивать и там и там (ноды Mix).
А можно «запилить» урок по нодам? Какой для чего, манипуляции?
Имеется в виду вообще по нодам а не только по текстурированию…
Или где можно нарыть инфу с примерами?)
Да примеров уже куча, даже на моем сайте. Вот один из:
https://blender3d.com.ua/sozdaniye-kanata-s-pomoshchyu-protsedurnoy-tekstury/
Несколько текстур и в итоге имеем, что имеем.
Артём, посмотри какая у меня странная карта получается, не того цвета. Подскажи что не так и как это исправить, пожалуйста!
Ну как я могу подсказать что не так глядя на это? Возможно нужны какие-то детали?
Сверху хай поли модель. Когда запекание нужно сделать я просто пуская её на лоу поли. Оси вроде совпадают.
Я не вижу плоскость в Вашей сцене. Вы что, одну табуретку запекаете на другой?
ну да, с хай поли геометрию переношу на лоу поли. Обычно всё нормально, а в этот раз нет, непонятно почему. Вот ссылка на бленд файл http://vk.com/doc27364825_315232844
Данный документ доступен только его владельцу.
Пропробуй ешё раз http://vk.com/doc27364825_315232844
Вся загвоздка в развертке.
На плоскость все отлично проецируется.
Блин, ну швы то вроде правильно расположил. С плоскости то не взять карту для объёмной модели. Даже автоматическая UV не помогает.
сделал, по инструкции, себе дверную ручку. получилась вот-такая прелесть (куча шума) как сиё исправить?(слева рендер, справа предпросмотр)
Невозможно ничего подсказать не видя меша, настройку материала, карту нормалей и т.д.
Ну если это сделано с помощью микса двух дифузных нодов и на вход смешения подается стандартная нойзовая текстура то надо детализацию шума понизить.
В Cycles перед запеканием (как ни странно) нужно увеличить количество семплов в настройках рендера. Тогда шума будет меньше. Но возрастет время запекания.
P.S. Комментарий для всех, кто столкнулся с похожей «проблемой».
Есть плагин для фотошопа под названием NVIDIA Normal map filter входящий в пакет NVIDIA Texture Tools, ну это тому кто юзает фш для своих работ естественно) пробиваем название в гугле, качаем с оф.сайта)
А возможно ли накладывать на объект с картой нормалей обычную текстуру, сверху?
В 99.9% случаев только так и делают.
Спасибо
Хочу добавить от себя, что карту нормалей легко делать в фотошопе из уже имеющейся текстуры с помощью плагина нвидиа: nvidia tools. буквально в пару кликов и — вуаля. )
Спасибо, попробуем (:smile:)
Подскажите пожалуйста, можно ли как то подгрузить в блендер карту нормалей сделанную в Crazy Bump
Что за вопрос? В Blender можно любое изображение подгрузить!
нет выбора отображения GLSL, да и Multitexture
использую Cycles Render
даж при отключении Motcap
хелп
«использую Cycles Render»
А нужно Internal
точно ?
большое спасибо
Подскажите пожалуйста, очень надо) Как мне сделать вот такую шероховатось, как на фото. Это делается при помощи какой карты или вообще при помощи чего? Ибо при помощи карты нормалей приишлось бы вручную все эти пупырышки выдавливать, а потом ее запекать…
удачи в выдавливании и запекании)
с плейном всё получается,а как только модель сложнее сразу лезут артефакты,перепробовал всё даже в substance panter 2 пробовал и не получается,в чём может быть проблема ?
Как исправить швы? Надо переразворачивать или как-то можно сгладить карту?
И так и так можно.
Для чего нужны нормали?
https://blender3d.com.ua/pochemu-igry-ispolzuyut-karty-normaley/
ecть хоть кaкой тo cпоcoб щac в интeрнете зарaботaть ?
А как быть если я собираюсь не плоскость запекать, а например робота? Надо делать развертку, потом запечь АО, и из АО сделать карту нормалей?
Хотел бы я посмотреть, как из AO делают карту нормалей ?
https://blender3d.com.ua/assety-sleduyushchego-pokoleniya-next-gen/ (шаг 6)
О, спасибо большое. У вас отличные уроки! А выгде нибудь работаете с такими то знаниями?
Конечно! ?
ecть хоть кaкой тo cпоcoб щac в интeрнете зарaботaть ?
Спасибо за очень полезный урок!
Душевная благодарность — отличный урок, особенно для новичков в 3d моделировании. Хотелось бы узнать, как сделать нечто подобное из текстуры (если такое вообще возможно)
Надеюсь Артем не обидится. Нашел доходчивое видео https://www.youtube.com/watch?v=BOYRCI-dtjU
Правда на английском языке. Но у кого с ним сложности, могут и без звука послушать — все и так понятно.
А как запекать карту нормалей для более сложных объектов?
https://blender3d.com.ua/sozdaniye-nakovalni-v-blender-part-2/