Материалы
6.1. Работа в редакторе материалов
Переходим ко второму важному этапу в создании 3D-rpaфики, который назовем так: разработка и присвоение материалов объектам. Слово "разработка" выбрано потому, что в большинстве случаев материал для того или иного объекта приходится создавать с нуля, причем изначально не известно, какие настройки необходимо выбрать и какие карты применить. Они подбираются методом проб и ошибок. Порой приходится потратить достаточно много времени для экспериментов, пока результат не станет удовлетворительным. Этот этап можно охарактеризовать как художественно-оформительский. Назначенные материалы могут как улучшить общий вид сцены, так и испортить его. Непропорциональные текстуры, отсутствие рельефности или отражения даже в красиво созданной сцене сильно бросаются в глаза и портят общее впечатление о картинке. Овладение методом создания материалов является одним из главных признаков мастерства любого художника, чем бы он ни занимался — дизайном, компьютерной графикой, архитектурной визуализацией или анимацией.
Итак, начнем.
Материалом называется набор настроек, описывающий свойства поверхности. К свойствам поверхности относится не только цвет. Блики, прозрачность, рисунок или текстура, рельефность, преломление и самосвечение — все это свойства, которые делают поверхность реалистичной. Материал можно назначить на любой объект, но нельзя использовать как задний фон.
Для создания материалов есть специальный редактор Material Editor. Открывается через главное меню Rendering или клавишей <М> (рис. 6.1).
Рис. 6.1. Редактор материалов
Имя материала должно быть уникальным, материалы с совпадающими именами в сцене одновременно существовать не могут. Большинство материалов, генерирующих реалистичные поверхности, относятся к типу Standard.
Основные команды редактора материалов:
Get Material — Вызвать браузер (просмотрщик). Необходима для получения материалов из библиотеки.
Assign Material to Selection — Назначить материал на выделенный объект (при условии, что выделен хотя бы один объект).
Show Map in Viewport— Показывать карту материала в проекциях. Позволяет увидеть текстуру в рабочих окнах.
Material/Map Navigator— Дерево материала. Позволяет увидеть структуру материала и переключаться по уровням.
Background — Показать задний фон (для просмотра прозрачных материалов).
Sample Type— Тип образца материала (сфера/цилиндр/куб), для изменения надо подержать кнопку нажатой.
6.2. Базовые параметры материала
Для того чтобы поэкспериментировать, создайте простую сцену, например, Box, Torus, Sphere и Teapot. Расположите их примерно как на рис. 6.2.
Рис. 6.2. Простая сцена без материалов
Материал "Пластик", метод тонирования Вlinn
Откройте редактор материалов и выберите любой свободный слот. Первый материал, который мы создадим — это пластик. Введите название материала в строку имени. Всегда давайте имя создаваемому материалу, это пригодится в дальнейшей работе. Разверните свиток Blinn Basic Parameters (рис. 6.3).
В этом свитке настраиваются базовые параметры материала, такие как цвет,
блики, самосвечение и простая прозрачность. Но обо всем по порядку. Сначала задается цвет материала. Для этого щелкните по серому прямоугольнику около слова Diffuse (рис. 6.4).
Рис. 6.3. Свиток Blinn Basic Parameters
Откроется диалоговое окно Color Selector (Выбор цвета). В этом окне можно задать любой цвет. В дальнейших примерах, чтобы точно передавать цвет, будем использовать цветовую модель RGB (рис. 6.5).
Рис. 6.5. Диалоговое окно Color Selector
Выбрав необходимый цвет, закройте диалоговое окно Color Selector, нажав кнопку Close.
Ниже диффузного цвета находится Specular— это цвет зеркального блика. У пластика блик белого цвета, поэтому оставим этот цвет без изменений.
Переходим к силе блика. За яркость блика отвечает параметр Specular Level (Яркость блика). Увеличьте яркость блика с 0 до 60, потянув за стрелки (рис. 6.6), или введите значение в числовое поле с клавиатуры. Обратите внимание на изменение блика на образце материала в слоте.
Рис. 6.6.Параметр Specular Level
Следующий параметр Glossiness позволяет задать глянцевитость материалу. Для материала "пластик" значение Glossiness можно поставить 50.
Итак, материал готов. Можно назначить его на объект. Для этого выделите
в сцене, например, Sphere и в редакторе материалов нажмите кнопку (см. рис. 6.1). Визуализируйте сцену (нажатием клавиши <F9>).
Материал "Резина", метод тонирования Oren-Nayar-Blinn
Для того чтобы сделать "резиновый" материал, нужно выбрать другой метод тонирования (Shader). Метод тонирования выбирается в свитке Shader Basic Parameters. По умолчанию выбран метод тонирования Blinn. Именно с таким шейдером мы делали пластик. Для резины лучше подойдет Oren-Nayar-Blinn. Выберите этот шейдер из выпадающего списка (рис. 6.7).
Рис. 6.7. Метод тонирования Oren-Nayar-Blinn
После этого свиток базовых настроек материала немного изменится. Он будет называться Oren-Nayar-Blinn Basic Parameters (рис. 6.8), и в нем добавятся две дополнительные настройки, которых нету шейдёра Blinn.
Рассмотрим все базовые настройки подробнее. На рисунке параметры отмечены цифрами, а далее следует описание каждой настройки. Прочитайте и поэкспериментируйте с каждым из параметров.
Ambient — оттенок материала, при слабом освещении.
Diffuse —- основной цвет материала, имеет решающее значение.
Specular — цвет блика.
Specular Level —яркость блика.
Glossiness — гладкость поверхности, глянцевитость.
Рис. 6.8. Базовые параметры материала
Soften — смягчение края блика, полезно при создании резины.
Diffuse Level— количество отражаемого света (только у Oren-Nayar-Blinn).
Roughness— грубость, шероховатость поверхности (только у Оrеn-Nayar-Blinn).
Opacity — непрозрачность материала (100 — непрозрачно).
Self-Illumination — интенсивность самосвечения.
Теперь давайте вернемся к создаваемому материалу. Цвет Diffuse вы можете выбрать любой. Цвет Specular выберите близким к белому. Параметр Diffuse Level поставьте 80, Specular Level=45, a Glossiness=25. У шейдера Oren-Nayar-Blinn есть параметр Roughness (Шероховатость), который позволяет сделать поверхность матовой. По умолчанию этот параметр равен 50. Как раз то, что нам нужно. Материал готов, назначьте его на объект Torus. Визуализируйте сцену клавишей <F9>. Сравните два созданных материала (рис. 6.9).
Другие алгоритмы тонирования
Раздел Shader содержит и другие режимы тонирования, которые используются гораздо реже. Коротко их можно охарактеризовать так:
Blinn— основной способ тонирования, с помощью которого можно создать практически любую поверхность;
Oren-Nayar-Blinn — шейдер для имитации матовых, шероховатых поверхностей;
Metal— шейдер для имитации металлических материалов, у которых вся поверхность, кроме блика, выглядит темной из-за низкого уровня диффузного рассеивания;
Strauss— самый примитивный тип для создания металлических поверхностей;
Anisotropic — метод тонирования, позволяющий создавать анизотропные блики и поворачивать их на поверхности;
Multi-Layer— метод тонирования, аналогичный предыдущему, но позволяющий создавать два анизотропных блика разных цветов;
Translucent Shader — шейдер, позволяющий создать материал со спаданием самосвечения относительно удаленности от источника света.
Попробуйте выбирать поочередно разные алгоритмы тонирования (шейдеры) и поэкспериментировать с параметрами.