Библиотека материалов

Библиотека материалов – это библиотека, где пользователь может найти базовые и наиболее часто используемые материалы для использования в своих проектах или для создания на их базе своих собственных материалов.

Библиотека материалов находится в паке /blender/material_library/ относительно корневой директории SDK.

Структура библиотеки

Все материалы структурированы по папкам (по группам материалов) и отдельным файлам (по материалам). В каждом blend-файле находится один базовый материал (например bronze) и материал на дополнительном объекте (например happy_recon_bronze), который позволяет демонстрировать материал на характерном объекте, ассоциирующимся с данным материалом (например: материал золото — золотой слиток).

_images/material_library_main.png

Структура материала

_images/material_library_structure.png
  1. Ядро материала

  2. Нода Material, в которую подается вся нужная информация из ядра материала.

  3. Карта нормалей, которую при необходимости можно подключить к любому ядру материала.

  4. Текстура с необходимыми дополнительными масками для задания корректного поведения материала на поверхности объекта. В большинстве материалов использованы следующие маски:

    • Карта затенения

    • Карта загрязнения

    • Карта потёртостей

    • Карта патины

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

  5. Нода Mapping, регулирующая параметры UV-развертки.

  6. Ноды RGB Curve, позволяющие корректировать те или иные маски прежде чем они будут поданы в ядро материала.

  7. Специфическая настройка карты спекуляра после ноды Material, для создания разной степени размытости блеска с использованием масок.

  8. Запеченная карта затенения добавляется к шейдеру перед нодой Output.

  9. Нода Output

Ядро материала

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

Пример использования

_images/material_library_example.png

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

_images/material_library_example_demo.png
  1. Базовый цвет задан простой нодой RGB Color и подан на вход в ядро материала.

  2. В данной реализации материала не используется никаких карт нормалей и во вход Normal поданы данные нормалей с геометрии.

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

  4. Также в материале используется запеченная маска затенения.

Теперь рассмотрим использование того же материала на другом объекте - пластиковом джойстике.

_images/material_library_example_gamepad.png
  1. В качестве цвета здесь используется вертексный цвет с геометрии объекта.

  2. Для геометрии джойстика была запечена карта нормалей, которая подана во вход Normal ядра материала.

  3. Уровень глянца объекта настроен на меньшее значение.

  4. Вместо масок демонстрационной модели используются маски (загрязнения и затемнения), запеченные специально для модели джойстика.

Примечание

Следует заметить, что содержимое ядра материала не менялось и не корректировалось под другую геометрию.

Добавление материала в сцену

Добавление целого материала

_images/material_library_append.png

Выберете в меню File пункт Append или Link, в зависимости от того что вы хотите сделать - добавить объект полностью в ваш проект с возможностью изменять его (в этом случае выберите Append) или только прилинковать без необходимости изменений (в этом случае выберите Link).

_images/material_library_select_blend_file.png

Далее выберите интересующий вас .blend-файл с материалом из директории /blend4web/blender/material_library/

_images/material_library_select_material.png

Выберите сам материал в списке материалов и нажмите Append from Library или Link from Library. Теперь материал добавлен в вашу сцену и вы можете применить его к любому из объектов.

Добавление только ядра материала

Если вы хотите добавить только ядро материала, а остальную часть настроить самостоятельно, при линковке или добавлении вместо материала выберите NodeTree и, выбрав интересующую вас нодовую группу, нажмите Append from Library или Link from Library.

_images/material_library_add_core.png

Теперь эта нодовая группа находится в списке нодовых групп которые вы можете добавить в свой материал через Add=>Group в окне Node Editor.

_images/material_library_add_group.png

Примечание

У любого материала есть свои требования не только в отношении определенных масок и текстур, но и вертекстных цветов и UV-разверток.

Добавление библиотеки материалов в проект

При создании нового проекта возможно перенести библиотеку материалов в новый проект автоматически и подключать материалы оттуда.

_images/material_library_use.png

Для этого при создании нового проекта при помощи менеджера проектов надо выставить галочку Use Material Library. Тогда вся библиотека материалов будет автоматически скопирована в новый проект со всеми зависимыми от нее файлами.