Использование материала в Unity. #15

Unity    2018-03-05 22:26:01     тег: Курс по Unity

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

После того как модель бочки скачана и распакована, перетяните ее в Unity и разместите ее сцене. Эта бочка была сделана в программе 3Ds Max и экспортирована со стандартным материалом. Модель бочки состоит из двух объектов - металлического обруча и деревянной кадушки.

Если выбрать один из этих элементов, то на вкладке Hierarchy у компонента Mesh Renderer свойства Material вы увидите материал, который  называется No Name. Данный материал также был экспортирован из 3Ds Max вместе с моделью бочки.

Чтобы создать свой материал в Unity, щелкните правой кнопкой мыши в разделе Project и выберите из контекстного меню Create - Material.

Чтобы применить материал к объекту достаточно перетянуть его на объект. Давайте перетянем созданный материал на ассет бочка, а именно на объект barrelMetal_low и объект - barrelWood_low.

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

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

В стандартном шейдере есть свойство Albedo. Данное свойство задает цвет объекта или текстуры примененной к объекту, если таковая была загружена. Также управляет режимом прозрачности при помощи свойства Alpha, но только если свойство Rendering Mode установлено в Transparent.

Свойство Metallic позволяет придать объекту металлический оттенок. Свойство Smoothness позволяет создать сглаживание, например если вы создадите на объекте металлическую отражающую поверхность, то отражение может быть, как размазанным так и четким, и на это влияет свойство Smoothness.


Чтобы придать объекту металлический оттенок выбранной области нужно использовать так называемую карту металлических поверхностей, и загрузить ее в свойство Metallic. Изображение металлической карты на предосмотре имеет всего два цвета. Белый цвет означает, что поверхность будет металлической, а черный не металлической. При этом  в свойстве Metallic черной области соответствует ноль, а белой единица.
 
Давайте применим металлическую карту и посмотрим на бочку. Как вы видите теперь ее металлические полосы стали блестящие и более похожи на металл, а деревянная часть осталась без изменений.

Теперь обратим внимание на свойство Normal Map. Существует такое понятие как карта нормалей. Это изображение, которое позволяет создать иллюзию рельефной поверхности, при том, что поверхность останется плоской и количество полигонов также не увеличивается.

Чтобы увидеть данный эффект откройте свойство Normal Map и загрузите карту нормалей. Как вы видите теперь у бочки появился рельеф и стали видны выпуклые различные детали.

В данном уроке было рассмотрено простое использование материала. Но в зависимости от ваших потребностей, материал может быть более сложный. Допустим, можно создать материал разорванного флага, вернее будет сказано создать шейдер, который будет использован в материале.

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