Как сделать текстуру normal bump

Создание Normal Bump и его применение

Для создания трёхмерного бампа 3D MAX, как и игры, использует три цвета для определения точки в пространстве. То есть X,Y,Z соответствует R,G,B (возможен другой порядок). Для создание любых текстур нужно использовать только плоские виды, то есть рендер из окна перспективы исключается.

1. Делаем базу для создания карт Normal Bump.

— Создайте новую сцену: File>Reset.
— Создайте в виде Front Plane 1000х1000 с центром в [0,0,0].
— Создайте три источника света Target Directional Light трёх цветов: красный [255,0,0], зелёный [0,255,0] и синий
[0,0,255].

Проследите за тем, чтобы спад и тени были выключены. Мы воспользовались именно этим типом источника, так как нам нужна равномерно освещённая поверхность, а всенаправленный источник даёт неравномерное освещение.

— Разместим target всех источников света в координатах [0,0,0].

— Самим источникам задайте следующие глобальные координаты: красный [500,-500,0], зелёный [0,-500,-500], синий [0,-500,0].

Рис.1

Сейчас мы создали полностью и равномерно освещённую поверхность. Красный (справа) и зелёный (снизу) свет расположен под углом в 45 градусов к поверхности, что нам и нужно. А синий направлен прямо на Plane01. Теперь о материала: он должен быть матово-белый.

Рис. 02

На рисунках ниже показан небольшой пример, как оживляется пустое помещение и кабели при использовании Normal Bump.

2. Создание нашей первой Normal Bump карты.

Сейчас мы сделаем карту рельефа для кованного забора. Согласитесь, зачем делать трёхмерный забор с множеством сторон, если его можно сделать плоским без ущерба для вида? На его создании внимание заострять не буду, так как он делается очень просто: из цилиндров и шариков. Вы можете сделать свой.

— Создаём забор так, чтобы он вписался по размеру в нашу плоскость и выдвигаем его на передний план, чтобы он не находился в одной плоскости с Plane01, но и чтобы попадал под наш свет.

Вот, что получилось у меня. Я сделал его так, чтобы его можно было повторить, скопировав по оси Х столько, сколько нужно.


Рис. 03

Этот тип рендера позволяет отсечь всё лишнее, а нам нужно, чтобы наш забор повторялся. То есть нам нужна тайловая
текстура. Ещё нам нужна карта непрозрачности и карта зеркального отражения.

— Спрячьте Plane01 и снова отрендерите. Результат сохраните в 01.png 24b с альфа-каналом.
— Откройте Photoshop и сделайте из картинки 01.png чёрно-белую версию. То есть выделите всё непрозрачное и закрасьте белым.
Инвертируйте выделение и закрасьте чёрным. Склейте слои и сохраните в 02.jpg

3. Создание плоского забора.

Рис.04

Теперь наш забор готов полностью. Для проверки его псевдообъёмности поставьте несколько OMNI разных цветов в разных концах
сцены и отрендерите элемент забора покрупнее.

Рис. 05

Кстати, теперь можно назначить любую текстуру в канал Diffuse.

Можете скачать сцены урока и посмотреть маленький видеоролик: я анимировал три OMNI R,G,B, которые крутятся вокруг забора.
Очень впечатляет.

А вот несколько очень важных особенностей и советов:

Источник

В чем разница между bump, normal и displacement?

В статье мы подробно рассмотрим отличия карт bump от normal и displacement.

Вы столкнулись с трудностями при назначении карты bump на 3D-объект? Не переживайте! Многие 3D-художники, которые только начали изучать с 3D-текстурирование, испытывают сложности в этой области, не зная, какой тип карт выбрать: bump, normal и displacement.

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Все три типа карт создают дополнительную детализацию на поверхности геометрии. Некоторые из этих деталей «настоящие», другие нет. Итак, попытаемся разобраться, в чем же заключается разница между картами bump, normal и displacement.

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Что такое карты bump

Карты bump являются одним из старейших типов карт. И первое, что нужно понять – это то, что bump создает фейковую детализацию. И это правда, поскольку карты bump создают иллюзию глубины на поверхности модели с помощью трюка со светом. Никакой дополнительной детализации при этом не добавляется.

Обычно, карты bump – это черно-белые 8-битные изображения. И это только 256 цветов черного, серого или белого. С помощью этих значений карты bump сообщают 3D-редактору всего 2 вещи: деформировать геометрию вверх или вниз.

Когда значения карты bump близки к 50% серого, с поверхностью геометрии практически ничего не происходит. Когда изображение ярче, ближе к белому, детали выдавливаются на поверхности геометрии. Если изображение более темное, ближе к черному, детали вдавливаются в поверхность геометрии.

Карты bump отлично подходят для создания на поверхности модели мелкой детализации, например, пор или морщин на коже. Кроме того, их сравнительно легко создать в таком 2D-редакторе, как Photoshop, помня при этом, что работать нужно только с черно-белыми цветами.

Минус же карт bump заключается в том, что детализации, созданной с их помощью, можно достаточно быстро лишиться, если посмотреть на объект с неверного ракурса. Кроме того, при использовании карт bump силуэт модели остается неизменным, поскольку они создают фейковую, а не реальную детализацию.

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Что такое карты normal

Карты нормалей или normal-карты – это улучшенные карты bump. Normal-карты, как и карты bump, создают фейковую детализацию, не добавляя дополнительных деталей геометрии в сцене. В результате, карты нормалей создают на поверхности модели иллюзию детализации, но эта детализация в корне отличается от той, которую создают карты bump.

Как мы уже знаем, карты bump используют черно-белые цвета, чтобы вдавливать или выдавливать поверхность геометрии. Normal-карты работают с RGB-информацией, которая точно отвечает X, Y и Z значениям в 3D-сцене. Эта RGB-информация сообщает 3D-редактору точное направление нормалей каждого полигона поверхности. Ориентация нормалей поверхности, которые часто называются просто нормалями, сообщает 3D- редактору, в какой цвет окрасить тот или иной полигон.

Normal-карты бывают двух типов и выглядят совершенно по-разному в 2D-пространстве.

Наиболее распространенным типом карт нормалей являются normal-карты типа tangent space, которые зачастую сочетают в себе лиловый и синий цвета. Этот тип карт нормалей лучше всего подходит для мешей, которые должны деформироваться при анимации. Normal-карты типа tangent space идеально подходят для персонажей. Для объектов, которые статичны и не испытывают деформаций, больше подходят карты нормалей типа object space. Эти карты окрашены в различные цвета и просчитываются немного быстрее normal-карт типа tangent space.

При использовании карт нормалей нужно понимать несколько моментов. В отличие от bump’а эти карты сложнее создать в 2D-редакторе типа Photoshop. Запекаются normal-карты с хайпольного меша на лоупольный. Однако, есть несколько путей их редактирования. Например, возможность редактирования карт нормалей представлена в MARI.

Кроме того, normal-карты лучше других вписываются в большинство пайплайнов. Но в отличие от карт bump в этом правиле есть исключение. И касается оно мобильного геймдева, поскольку аппаратные средства начали «понимать» карты нормалей сравнительно недавно.

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Что такое карты displacement

Когда же дело доходит до создания дополнительной детализации для лоупольных мешей в игру вступают карты displacement, которые способны творить чудеса. Карты displacement создают физическую детализацию меша, на который они назначаются. Для создания displacement’а меш необходимо подразделить несколько раз или тесселировать, чтобы разрешения хватило для создания реальной геометрии.

Карты displacement выгодно отличает то, что их можно запечь с хайпольного меша или нарисовать вручную. Карты displacement, как и карты bump, работают с черно-белыми значениями цветов. При этом с легкостью можно использовать и 8-битные карты displacement, но лучший результат можно получить с помощью 16- или 32-битных карт displacement. И, хотя, 8-битные карты displacement лучше выглядят в 2D-пространстве, в на рендере они могут вызвать странные артефакты и пр. из-за недостаточной информации.

А вот что касается времени просчета, то тут все далеко не так круто. Создание дополнительной детализации в режиме реального времени достаточно трудоемкий процесс, с которым 3D-редактор справится не быстро. Кроме того, большинство 3D-редакторов просчитывают displacement уже на рендере. По сравнению с картами bump и normal карты displacement могут серьезно сказаться на времени рендера.

Ничто не справится с детализацией так, как это сделают карты displacement. И, поскольку поверхность геометрии изменяется на самом деле, это отражается и на силуэте модели. Но при этом всегда нужно оценивать реальную необходимость, а также преимущества использования карт displacement.

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Одновременное использование всех карт

В некоторых случаях для одного и того же объекта можно использовать карту bump или normal в сочетании с displacement. При этом карту displacement лучше всего использовать для значительных изменений геометрии, а карты bump и normal для добавления мелких деталей.

Вне зависимости от того, какую карту вы выберите, принцип их работы необходимо понимать в любом случае, это только поможет еще лучше использовать преимущества карт bump, normal и displacement.

Читайте в нашей предыдущей статье о тонкостях displacement.

Источник

Кратко о запекании нормалей (бампа).

Конечный результат в Blender3d:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

В большинстве случаев, проще использовать некую текстуру, вместо миллионов полигонов (допустим, складочки на футболке ГГ).

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

У нас имеется лоу-поли меш колесика, с авто-сглаживанием (Группами сглаживания), с UV-разверткой (512×512):

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

ВАЖНО! На объекте должен быть материал, но без текстуры

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Вы могли заметить, что одна из частей колеса на UV-Острове сдвинута вправо (ровно на 512px). Это сделано для того, что-бы при запекании нормаль не создавала артефактов накладывалась друг на друга. В последствии, после успешного пека – этот остров вернется на место.

*Накладывание UV-Острова друг на друга нормальная практика, называется оверлап.

Также есть хай-поли меш, (без развертки, но со смуф-группами) с которого мы будем печь нормали:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Далее, если вы используете блендер:

1. Выделяете хай-поли меш.

2. Выделяете лоу-поли меш с зажатым шифтом.

3. Идем во вкладку Render (Фотоаппарат в опциях) и листаем вниз до меню “Bake”.

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Bake Mode – Normals

Галка Selected to Active object говорит о том, что ранее выделенный объект будет запекаться на ТЕКУЩИЙ объект.

Bias – Минимальная дистанция граней. –Можно оставить как есть.

Bake to Vertex – Печь в цвета вершины.

Clear – Сбросить текстуру (если ранее была запечена).

Margin – Паддинг (отступ, дополнительные пиксели вокруг UV-Острова).

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Печется-же нормаль в промежутке Distance-Bias. В разных ситуациях по-разному, потому можно попробовать с ними “поиграться”.

После выставления необходимых значений – нажимаем кнопку Bake.

Если вы сделали все верно, то должен получится примерно такой результат:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

*Не самый лучший (много свободного места), лишь для демонстрации.

Дабы посмотреть его в редакторе:

Выделите ваш лоу-поли меш > выберите вкладку текстура > выберите текстуру от материала > создайте новую > в вкладке Image выберите свою нормаль

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Ниже есть выпадающие меню Image Sampling и Influence. Выставляем следующие параметры:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Готово, материал настроен. Теперь осталось добавить в сцену источник света и переключить режим с Solid на Material.

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Старался очень кратко, многое мог упустить.
Внимаю любую критику.

Найдены возможные дубликаты

Еще бы такой же тутор по текстурированию и я бы был счастлив.

Большое спасибо! А можете пожалуйста сделать ещё гайд по UV развёрткам? А то я сколько не пробовал, криво текстурится.

Спасибо за мотивацию начать пилить уроки! Местные комментарии показывают, что далеко не все «очевидные» вещи очевидны для большинства. Пожалуй, более подробно и углубленно буду вести похожую рубрику в сообществе CGI Media, чтобы не дублировать тему =) Ну, и с 3DS Max’ом в качестве рабочей среды.
Не против, если буду ссылаться в некоторых моментах?)

ты не хочешь добавить в пост такую мелочь, что это бейк в blender render, а не сайклс?

Уже нельзя редактировать 🙁
Обычно моделят под игровые движки в блендер-рендер, ибо суслик-маты не поддерживаются движками.

Разница там только вроде в настройке материалов, что не является основной темой урока.

Я не разработчик, и очень далёк от этого. Но от множества новых слов и выражений я сейчас такой =)

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

А вот скакать из пакета в пакет со своими обжами

А вы точно графикой занимаетесь или просто мимо проходили посмотрев пару тутуров?

Спасибо, интересный пост, я чуть-чуть самоучка в блендере ))

Вам бы уроки по скайпу вести, с удовольствием посмотрел бы, даже платно. Тема для меня интересная, но у меня нет достаточного времени для самостоятельного освоения с нуля. А с учителем и заданиями было бы куда продуктивнее.

Отличный пост, пиши еще!

мммм, а зачем запекать бамп из модели, если его можно НВидевской тулзой сделать из дифьюза? Ну т.е. в чем практическая польза такой процедуры?

Типа делаем хайполи, запекаем с него бамп, делаем лоуполи накидываем бамп?

Нвидией ты получишь с дифьюза, верно. Но как быть, если у меня нет дифьюза? Также, нвидиа-тулза строит нормаль по глубине (если мне память не изменяет) цвета, что может возвращать неверное представление нормал-карты. А для уникальных объектов типа футболочки как?

Это в каком моменте она может дать неверное представление? Взять красный канал у предварительно BW изображения дифьюза, и с помощью нормалфильтра нвидии создать карту нормалей, добавить размытия по гауссу и нормализировать сверху? И что значит у вас нет диффуза? Модельку сделялъ, а текстурку не сделяль? Это что-то новое модное? И чем, уникальная футболочка отличается? Работы по созданию НМ, в Нвидии и фотошопе, ну минут на 10-15, поплевывая в потолок. К чему вот это непонятное усложнение с блендером и пр. Вам так неценно свое время и затраченные усилия?

Опять же, такой принцип создания нормалей характерен для очень высокого качества моделей, для каких-нибудь ААА проектов. А для вещей вроде колес, спорно.

И что значит у вас нет диффуза? Модельку сделялъ, а текстурку не сделяль? Это что-то новое модное?

Источник

Создание текстур рельефа bump

Материал из S.T.A.L.K.E.R. Inside Wiki

Содержание

Создание карт рельефа bump & bump#

Внимание! Уроки рассчитаны на пользователей, уже достаточно хорошо освоивших фотошоп. Различные вопросы типа «а где находится эта кнопачка. » здесь не рассматриваются. Названия функций приведены на русском языке, у кого фотошоп англоязычный, ориентируйтесь по смыслу.

На данном уроке попробую подробно описать порядок создания карт рельефа в игре с помощью фильтра карт нормалей от nVidia. Действия, которые описаны ниже, я не буду называть ни самыми рациональными, ни самыми простыми. Просто так делаю я сам, и не обязую следовать им в точности.

Так вот, большинство текстур в игре имеют по два одноименных собрата с индексами _BUMP и _BUMP#. так вот эти две дополнительных текстуры и являются рельефом, или «бампом».

К примеру, имеем мы текстуру STON.dds:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

А сейчас будем делать для нее бампы. Как было сказано ранее, рельеф начинается с карты высоты, фильтр от nVidia здесь пока не нужен.

Карта высот

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

если возиться с текстурами лень, и результат не важен, то следующий шаг можно пропустить, в противном случае, берем в руки весь инструментарий фотошопа, включаем фантазию и приводим карту высот к более правильному виду. Например черная тень от камней сверху не должна влиять на рельеф, камни должны быть не такими плоскими, да и прослойки не должны быть плоскими, у меня получилось что то вроде этого:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

карта высоты готова. сделаем с нее дубликат, переведем в РГБ и найдем фильтр карт нормалей, он находится в самом низу списка фильтров.

Карты нормалей

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Для полного счастья сталась только карта интенсивности блика.

Карта интенсивности блика

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Ну вот. Теперь все для текстур бампа готово. осталось только разложить все по нужным каналам и сохранить.

Первой проще делать текстуру bump#. Для этого берем карту высоты, копируем изображение на свежесозданную альфу, а каналы РГБ заливаем однородным серым цветом (за серый принимается цвет в середине всего диапазона яркости, т.е. лучше всего брать 127 или 128). Далее остается только сохранить ее:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

С текстурой bump все сложнее. По непонятной причине разработчиками игры был выставлен обратный порядок каналов. Т.е. то что фильтр nVidia располагает в порядке RGB(A), в текстуре bump порядок обратный, т.е ABGR. Это составляет определенную сложность и затрату времени при конвертировании «синенькой» текстуры, создаваемой фильтром, в «зелененькую» текстуру bump. Я обычно делаю это так:

с текстуры bump# делается дубликат и сохраняется как bump, далее на нее с помощью копипаста вставляются каналы из «синенькой» текстуры, которая была недавно сгенерирована фильтром. Порядок такой:

а чтобы довести текстуру bump до конца и сделать ее истинно «зелененькой», в канал R нужно вставить карту интенсивности блика. Все, можно сохранять. должно получиться вот так:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Вот и все, карты рельефа для сталкера готовы. Остается только посмотреть, как будет выглядеть в игре:

Как сделать текстуру normal bump. Смотреть фото Как сделать текстуру normal bump. Смотреть картинку Как сделать текстуру normal bump. Картинка про Как сделать текстуру normal bump. Фото Как сделать текстуру normal bump

Дополнение

Кстати, забыл упомянуть, если исходная текстура бесшовная, то необходимо сохранять бесшовность всех карт, из которых состоит рельеф!

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *