Курс по Blender 3D: Работа с материалами и текстурами
К выбору урока
Выход
Содержание |
Глава 9: Работа с материалами и тестурами
Введение
Материал определяет художественные качества вещества, из которого сделан предмет. В простейшем виде вы можете использовать материалы, чтобы показать вещество, из которого сделан предмет, или «раскрасить» предмет разными цветами. Обычно вещество представлено его поверхностными качествами (цвет, блеск, отражательная способность и т. Д.), Но оно также может проявлять более сложные эффекты, такие как прозрачность, дифракция и подповерхностное рассеяние. Типичными материалами могут быть латунь, кожа, стекло или лен.
В Blender’е каждый материал может иметь ассоциированные с собой текстуры (хотя это и необязательно). Текстуры описывают вещество: к примеру, это полированная латунь, вот это – грязное стекло, а это – вышитое полотно. Как добавлять текстуры описывается в соответствующей главе.
Как материалы работают
Прежде чем вы поймёте, как эффективно работать с материалами, вы должны понять, как в рендере Blender’а взаимодействуют между собой моделируемый свет и поверхности и как настройки материала управляют этим взаимодействием. Глубокое понимание рендера поможет вам получить от него максимальную выгоду.
Визуализируемое изображение, которое создаёт Blender, является проекцией сцены на воображаемую поверхность, называемую плоскостью просмотра. Плоскость просмотра аналогична плёнке в традиционной камере или палочкам и колбочкам в человеческом глазе, за исключением того, что она получает имитируемый, а не реальный, свет.
Чтобы визуализовать сцену, сперва мы должны определить, какой свет из сцены достигает каждой точки на плоскости просмотра. Для ответа на этот вопрос лучшее, что можно сделать, – проследовать по прямой линии (моделируемому световому лучу), проходящей через фокальную точку (позицию камеры) и плоскость просмотра, в обратном направлении, пока мы не наткнёмся на расположенную в сцене визуализируемую поверхность. В точке пересечения мы сможем определить, какой свет пришёл в эту точку.
Основной принцип движка визуализации
В любой точке на поверхности, когда в неё попадает световой луч, имеют место два основных типа явлений: диффузное и зеркальное отражение. Диффузное и зеркальное отражения отличаются друг от друга, в основном, соотношением между углами падающего и отражённого света.
При затенении (иначе говоря, покраске) объекта во время визуализации также принимается во внимание базовый цвет (изменённый диффузным и зеркальным отражениями) и интенсивность света.
При использовании внутреннего трассировщика лучей могут возникнуть и другие (более сложные) явления. В отражениях, рассчитываемых трассировщиком, точка поверхности, в которую попал световой луч, вернёт цвет своего окружения. В расчёте этого цвета будет учитываться как отражательная способность материала (смешивающая базовый цвет и цвет окружающей среды), так и угол просмотра.
С другой стороны, в преломлениях, рассчитываемых трассировщиком, точка поверхности, в которую попал световой луч, вернёт цвет своего фонового окружения. Учитываются как степень прозрачности материала (смешивающая базовый цвет и цвет фона окружающей среды с дополнительной фильтрацией),так и необязательный показатель преломления материала, искажающий угол просмотра.
Конечно, затенение объекта, попавшего под луч света, будет означать смешивание всех этих явлений одновременно во время рендеринга. Внешний вид объекта при визуализации зависит от многих взаимосвязанных настроек:
- Окружающая среда (рассеянный цвет, Radiosity, Ambient Occlusion)
- Источники света
- Настройки материала (включая окружающее освещение, излучение и все остальные настройки на всех панелях данной вкладки)
- Текстуры и способ их смешивания
- Узлы материала
- Камера
- Угол обзора
- Препятствия и прозрачные преграды
- Тени от других (не)прозрачных объектов
- Параметры визуализации
- Размеры объекта (настройки подповерхностного рассеивания зависят от размеров)
- Форма объекта (преломления, эффекты Френеля)
Рассмотрим основные параметры материала
Панель материала
Материалы могут быть связаны с объектами и данными объекта через меню вкладка материалов - панель материалов На ней вы можете указать, как материалы должны связываться с объектами, полисетками и прочими вещами, а также активировать материал для редактирования в остальных панелях.
Типы матерималов
Материал, добавленный в режиме правки. Эти кнопки говорят Blender’у, как материал должен влиять на конвейер визуализации и какие аспекты материала будут визуализироваться.
Поверхность (Surface)
Визуализировает объект как поверхность
Каркас (Wire)
Визуализировает рёбра граней в виде проволочной сетки (не работает при использовании трассировки лучей).
Объем (Volume)
Визуализировает как объем
Объемный рендеринг - это метод рендеринга света при прохождении через участвующие медиа в трехмерной области. Реализация в Blender физически основанной модели, которая представляет различные взаимодействия света в объеме относительно реалистично.
Гало (Halo)
Визуализиолвать объект как гало частиц.
Материал гало визуализирует все точки объекта в виде светящихся точек или маленьких облачков света, хотя они и не являются настоящими огнями, поскольку не посылают световые лучи в сцену, как это делают лампы. Они называются гало, поскольку вы можете их видеть, но они не содержат никакого вещества
Создание нового материала
Когда создаётся новый объект, он создаётся без привязанного материала. Создание объекту материал можно сделать следующим способом:
Выберать объект.
В редакторе свойств нажмите на кнопку объекта.
Нажмите кнопку «Материалы» в заголовке редактора свойств.
Появится панель настроек затенения. Она содержит следующие элементы:
Добавление нового материала
Контекст: текущая выбранная сцена и объект.
Слоты материала объекта: эта панель показывает «слоты» для материала (или материалов), которые содержат данные этого объекта.
Активный материал: изначально пустой, с просьбой «Новый».
Для добавления нового материала нажмите на кнопку «+» в блоке активного материала. В результате этого действия произойдёт несколько вещей:
Diffuse - Диффузные шейдеры
Диффузный шейдер определяет, попросту говоря, основной цвет материала, когда на него падает свет. Большинство шейдеров спроектированы для имитации реальных материалов и дают плавный спад освещённости при переходе от сильно освещённых областей к областям в тени, однако для различных спецэффектов в Blender’е есть и другие шейдеры.
Общие параметры
Все диффузные шейдеры обладают следующими параметрами:
Цвет
Базовый цвет материала при рассеянном освещении.
Интенсивность
Яркость шейдера, или точнее, количество энергии падающего света, фактически диффузно отражённого в направлении к камере.
Градиентная карта
Позволяет задать диапазон цветов для материала и определить, как они будут меняться вдоль поверхности.
Технические подробности
Свет, падающий на поверхность и затем повторно облучаемый с помощью явления диффузии, будет рассеиваться, то есть повторно облучаться во всех направлениях изотропно. Это означает, что камера будет видеть одинаковое количество света от этой точки поверхности независимо от угла падения . Именно это качество делает независимую точку зрения рассеянного света . Конечно, количество света, попадающего на поверхность, зависит от угла падающего света. Если большая часть света, падающего на поверхность, отражается диффузно, поверхность будет иметь матовый вид (свет повторно излучается при явлении диффузии).
Основные шейдеры
Встроенный рендер Блендера имеет в наличии несколько вариантов того, как точно затенить 3D-геометрию, созданную вами. Главный набор настроек для Diffuse shading, который является способом, с помощью которого рендер вычисляет общую затененность объекта. Вот короткий анализ большинства из того, что доступно, и для чего каждый шейдер лучше всего подходит.
Lambert: настройка шейдеров по умолчанию в Блендере. Эта шейдинговая модель хороша для пластиковых и других глянцевитых (glossy), достаточно гладих поверхностей.
Minnaert: этот шейдер позволяет вам получить эффект, при котором игра света меняется на полигонах "смотрящих" на камеру, то есть на перпендикулярных камере. Изменение ползунка Dark и наблюдение за панелью Preview поможет вам быстро понять, как он воздействует. Этот шейдер пригоден для одежды, особенно для таких тканей, как вельвет, также может быть использован (с Dark) для того, чтобы отображать эффект подсветки объектов сзaди.
Oren-Nayer: замечательная основная шейдинговая модель для матовых (matte) поверхностей. Если вы не работаете с одним из особых случаев, упомянутых в других описаниях шейдеров (ткань, пластмасса, и т.д.), то попробуйте эту.
Тoon: этот шейдер разбивает шейдер на 3 плоских региона - тень, полутон и подсветку, и позволяет вам управлять резкостью границ между ними. Используемый правильно в комбинации с шейдером Toon specular и опцией рендеринга граней, он может создать эффект, похожий на стандартный трехкомпонентный шейдинг, используемый в большинстве современной рисованной анимации.
Specular - Шейдеры блика
Зеркальные шейдеры создают яркие пятна на глянцевых поверхностях, имитируя отражение источников света. В отличие от диффузного затенения, зеркальное отражение зависит от направления взгляда. Согласно закону Снеллиуса, свет, падающий на зеркальную поверхность, будет отражаться под углом, повторяющим угол падения (относительно нормали поверхности). По этой причине угол обзора становится определяющим фактором
Общие параметры
Все диффузные шейдеры обладают следующими параметрами:
Цвет бликов
Цвет зеркальной подсветки.
Интенсивность
Интенсивность или яркость пятна блика. Задаётся в диапазоне от 0 до 1.
Градиентная карта
Позволяет задать диапазон цветов блика для материала и определить, как они будут меняться вдоль поверхности. Подробности смотрите в документации к градиентным картам.
В результате, материал имеет по меньшей мере два различных цвета – один диффузный и один зеркальный. Зеркальный цвет, как правило, устанавливается в чистый белый (такой же «чистый белый», как отражаемый источник света), но также он может быть установлен в различные значения для достижения разнообразных эффектов (к примеру, металлы окрашивают свои блики).
Основные шейдеры
CookTorr - это базовый зеркальный шейдер, наиболее полезный для создания блестящих пластиковых поверхностей
Phong - базовый шейдер, очень похожий на Cook-Torr, но лучше для кожи и органических поверхностей. Его модель включала компоненты не только для зеркального освещения, но и для рассеянного и окружающего освещения.
Blinn - это более «физический» зеркальный шейдер, часто используется совместно с диффузным шейдером Орена-Наяра. Он может быть более управляемым, поскольку к вышеупомянутым трём параметрам добавляет четвёртый – показатель преломления.
Toon - Зеркальный Toon-шейдер соответствует диффузному Toon-шейдеру. Он предназначен для получения чётких, однородных бликовых пятен, как в нарисованных на плёнке мультфильмах.
Wardiso - это гибкий зеркальный шейдер, который может быть полезен для моделирования металла или пластика.
Transparency - Прозрачность
Материалам в Blender’е может быть назначена прозрачность, так что с помощью материала свет может проходить через любые объекты. Прозрачность контролируется «альфа»-каналом, в котором каждый пиксель содержит дополнительное значение в диапазоне от 0 до 1, в дополнение к его RGB-цвету. Если альфа=0, пиксель становится прозрачным, а RGB-значения поверхности никак не влияют на внешний вид пикселя; при альфе=1 поверхность становится полностью непрозрачной, и поэтому её цвет определяет конечный цвет пикселя.
Общие параметры
Alpha
Устанавливает прозрачность материала путём установки всех пикселей в альфа-канале материала в указанное значение.
Fresnel
Устанавливает силу эффекта Френеля. Эффект Френеля управляет прозрачностью материала в зависимости от угла между нормалью к поверхности и направлением взгляда. Как правило, чем больше угол, тем более непрозрачным становится материал (обычно это происходит по контуру объекта)
Specular
Управляет альфой/спадом бликового цвета.
Blend
Управляет смешиванием между прозрачными и непрозрачными областями. Используется только если параметр «Френель» больше нуля.
Показатель преломление
Зеркальные отражения
Зеркальные отражения вычисляются в Blender Render и Cycles Renderers с использованием трассировки лучей. (Отражения недоступны в игровом движке). Трассировка лучей может быть использована для того, чтобы материал отражал окружающую среду, как зеркало. Принцип отраженных лучей отражений очень прост: луч испускается из камеры и проходит через сцену, пока не встретит объект. Если первый объект, попавший под луч, не является отражающим, тогда луч принимает цвет объекта. Если объект является отражающим, то луч отскакивает от своего текущего местоположения и перемещается к другому объекту и т. Д. До тех пор, пока неотражающий объект не будет наконец встречен и не придаст цвет всей цепочке лучей.
Парамерты:
Цвет зеркала
По умолчанию, почти идеально отражающий материал, вроде хрома или зеркала, будет отражать точные цвета из своей окрестности. Но некоторые другие столь же светоотражающие материалы подкрашивают отражения своим собственным цветом.
Fresnel - Френель
Устанавливает силу эффекта Френеля. Эффект Френеля влияет на зеркальность материала в зависимости от угла между нормалью к поверхности и направлением взгляда.
Blend - Смешение
Управляющий коэффициент, регулирующий смешивание между отражающими и неотражающими областями.
Глубина - Depth
Максимально допустимое количество внутренних отражений света. Если сцена содержит мноо отражающих объектов на таком отражающем объекте нужно увеличть значения.
Max Distation
Максимальное расстояние отраженных лучей от камеры (глубина Z) в блендерах.
Блеск
Глянцевое покрытие красок очень гладкое и блестящее. Плоское, низко-блескучее покрытие рассеивает свет и даёт очень размытое отражение. Кроме того, неровная или парафинированная-но-зернистая поверхность. Параметр используется для создания реалистичного отражения, вплоть до совершенно затуманенного зеркала. Также вы можете использовать это значение для имитации в зеркалах глубины резкости.
Amont - Величина
Блеск отражения. Значения < 1.0 дают диффузные, размытые отражения и активируют нижеописанные параметры.
Thershold - Порог
Порог для адаптивной выборки. Если выборка вносит менее этого значения (в процентах), выборка останавливается. Повышение порога заставит адаптивную выборку чаще пропускать лучи, из-за чего отражения могут стать более зашумлёнными.
Samples - образцы
Количество конических выборок для получения размытых отражений. Большее количество выборок даёт более сглаженный результат за счёт увеличения времени визуализации.
Добавим освещение окужение и загрузим любую 360 hdri картину и получаем фотореалистичную картину для этого переходим в режим Cycle Render
Текстуры
Текстуры в Blender позволяют делать материалы более реалистичными, более похожими на вещества, из которых состоят объекты реального мира. Кроме того, с их помощью можно накладывать готовые изображения на поверхности, создавать рельефные карты и др.
В случае mesh-объектов текстура применяется как бы поверх материала. Здесь нельзя использовать текстуру, не привязав к объекту материал. С другой стороны, с материалом может быть связано несколько текстур. Каждая из них окажет свой эффект на совокупный результат.
Настройки текстур в Blender еще многообразнее, чем материалов. Для более полного освещения этой темы требуется отдельный курс. В данном уроке рассматриваются некоторые моменты работы с текстурами.
В Blender 2.80 работа с текстурами, также как с материалами, претерпела изменения. Текстуры теперь нельзя просто создать и применить к объекту через вкладку Texture редактора Properties. Придется освоить работу еще как минимум в одном редакторе Blender. Это будет
Node Editor – редактор шейдеров.
В этом редакторе масштабирование, перемещение (при зажатых шифте и колесе мыши) работают также как в 3D Viewport.
Если объекту добавлен материал, то у него уже будут две ноды. Настройки основной, в данном случае Glossy BSDF, дублируются на вкладке материалов, если не выключать там кнопку Use Nodes.
У нод есть сокеты – маленькие точки по бокам. Через них происходит соединение нод. Так одна нода оказывает влияние на какое-то свойство другой. Если мы хотим добавить текстуру, нам нужна нода с текстурой. Добавить ее можно через меню заголовка Add → Texture → … . Также работает Shift + A.
Добавляем то что показано в скриншоте
Image Texture это функция для добавления тектуры для нашего объекта
Mix Shader оно позваляет одновременно функционировать двумя шейдерми
Texture Coordinate устанавливает для нашей скачанной текстуры координаты
Следующий > < Предыдущий