Создание карты нормалей (normal map), карты смещения (displacement map), карты затенения/освещения (ambient occlusion map), самоовещенной карты нормалей и карты отражений/блеска (specular map) из текстуры или карты высот (heightmap) для игровых движков на примере Unity3D. Часть 3. Обзор Normalmap Online.

гровых движков на примере Unity3D. Часть 3. Обзор Normalmap Online

Данная часть статьи посвящена обзору онлайн приложения Normalmap Online для создания различных карт из изображения, включая создание карт нормалей (normal maps), карт смещения (displacement maps), карт затенения/освещения (ambient occlusion maps) и карт отражений (specular/reflection maps).

В предыдущей части статьи мы говорили про Теорию карт высот.

 

Normalmap Online

Загрузить текстуру или карту высот (любое изображение, можно и карту нормалей) в Normalmap Online вы можете, если щелкнете Левой Кнопкой Мыши по карте высот, изображенной в левой части экрана. В идеале, чтобы создавать необходимые карты для игр, стоит воспользоваться вкладкой “Pictures” справа от вкладки “HeightMap” над изображением карты высот, а нажав на иконку восклицательного знака, вы получите исчерпывающую информацию о том, что для того чтобы создать карту высот и остальные карты из изображения, вам потребуется их аж целых четыре, отличающиеся лишь расположением источника света при создании фотографии. Но, как уже было сказано выше и обычной фотографии или текстуры будет достаточно, особенно если соблюдается правило, что светлые области на фото/изображении соответствуют более высоким областям, а темные – более низким (либо наоборот, что исправляется чекбоксом Height напротив опции Invert, расположенной над средним окном приложения – одним из типом созданных карт).

На рисунке показана созданная в Normalmap Online карта нормалей по методу Собеля (Sobel). normalmap-online-nm
На рисунке показана созданная в Normalmap Online карта нормалей по методу Собеля (Sobel).

 

На рисунке показана карта смещений (Displacement), созданная в Normalmap Online. normalmap-online-displacement
На рисунке показана карта смещений (Displacement), созданная в Normalmap Online.

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

 

На рисунке показана карта блеска/отражений, созданная в Normalmap Online. normalmap-online-specular
На рисунке показана карта блеска/отражений, созданная в Normalmap Online.

 

На рисунке показаны два варианта карт Ambient Occlusion путем перемещения всего лишь одного из слайдеров. normalmap-online-ambient-occlusion_withlogo
На рисунке показаны два варианта карт Ambient Occlusion путем перемещения всего лишь одного из слайдеров.

Когда вы создадите все нужные вам карты, вы можете сохранить их, воспользовавшись небольшим меню, расположенном под окном готовой карты, предварительно выбрав саму карту (вкладки Normal, Displacement, AmbientOcc и Specular над окном готовой карты), ее имя, прозрачность от 0 до 100 %, а также один из двух форматов изображения: JPG либо PNG.

Сохранив необходимые карты, загрузите их в Unity3D, например, путем простого перетаскивания из окна Проводника Windows в одну из папок Ассетов Unity3D. Поместите их в соответствующие слоты меню настроек параметров материала, выставьте необходимые настройки и наслаждайтесь результатом.

На рисунке показаны три плоскости: в центре находится плоскость, материалу которой назначена одна лишь диффузная карта; справа – диффузная карта и карта нормалей; слева - диффузная карта, карта нормалей и карта затенения/осветления. in-unity3d
На рисунке показаны три плоскости: в центре находится плоскость, материалу которой назначена одна лишь диффузная карта; справа – диффузная карта и карта нормалей; слева — диффузная карта, карта нормалей и карта затенения/осветления.

Не знаете, куда деть карту отражений, не спросив об это поручика Ржевского? Не беда, выберите шейдер, например, стандартный, который поддерживает работу с картами отражений. Выбор шейдера осуществляется сразу под названием материала, слева от его иконки в окне Инспектора.

На рисунке показаны те же 3D модели, что и на предыдущем рисунке, но на 3D модели слева применен шейдер с поддержкой карты отражений, которая была помещена в соответствующий слот в меню настройки материала. Также на рисунке показано меню выбора шейдера. in-unity3d-specular
На рисунке показаны те же 3D модели, что и на предыдущем рисунке, но на 3D модели слева применен шейдер с поддержкой карты отражений, которая была помещена в соответствующий слот в меню настройки материала. Также на рисунке показано меню выбора шейдера.

Из плюсов Normalmap Online стоит также возможность просмотра результатов своих экспериментов в окне просмотра в режиме реального времени, без необходимости экспорта-импорта в Unity3D, Blender или Unreal Engine.

На рисунке продемонстрирована возможность предпросмотра созданных карт в режиме реального времени на одном из примитивов. normalmap-online-preview
На рисунке продемонстрирована возможность предпросмотра созданных карт в режиме реального времени на одном из примитивов.

Здесь можно выбрать форму объекта (параметр UV, включающий в себя Куб, Плоскость, Сферу и Цилиндр), на котором будет показан готовый результат применения карт и текстуры с возможностью тайлинга и возможностью отключения каждой из них (чекбоксы Use Map для соответствующих карт над окном 3D предпросмотра “3D Preview” и “Diffuse map” для загрузки диффузной карты). Можно запустить или отключить вращения затекстурированного 3D примитива, изменить силу воздействия смещения (Displacement), загрузить текстуру и затем отключить или включить ее отображение на примитиве. Более подробно про тайлинг рассказывалось в предыдущих статьях, в частности, в статье “От тайлинга и смещения до атласа текстур на примерах смены обложки для книги и текстуры одежды и кожи персонажа”.

В общем, любой каприз – за…бесплатно!

На рисунке показано, как может быть изменена текстура путем применения на ней различных карт: карты нормалей, карты отражений, карты освещения, вторичной текстуры. in-unity3d-full
На рисунке показано, как может быть изменена текстура путем применения на ней различных карт: карты нормалей, карты отражений, карты освещения, вторичной текстуры.

В следующей части статьи будет рассказано про Теорию карт нормалей

 

Автор: Максим Голдобин

goldmaxval@gmail.com

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