Создание материалов Blend4Web. Сложные материалы
2018-01-22
Проектируя воду для рендера Cycles, можно сделать процедурную карту Displacement, которая будет влиять на геометрию плоскости и создавать волны различной структуры. К сожалению, сделать это на Blend4Web пока что нельзя. Приходится прибегать к собственным разработкам (динамическая вода) или подготавливать геометрию с использованием шейдера. Начнем с изучения материала воды.
Материал воды достаточно прост по структуре и состоит из двух основных блоков нод. Первый блок — это две карты нормалей (1), которые создают мелкую рябь на поверхности. Для большей реалистичности используется анимация. Второй блок — это маска с эффектом Френеля (2), создаваемая на основе движущихся карт нормалей. Здесь смешивается кубическая карта отражений (3) с нодой Refraction, которая отвечает за прозрачность и преломление объектов внутри воды.
Для имитации крупных волн используется вершинная анимация (модификаторы Wave (1) и Displace (2)), запеченная с помощью специального инструмента Blend4Web (3).
Пришло время рассказать об одном замечательном трюке, который использовался для имитации эффекта глубины и каустики в сцене с материалом воды. Мы создали копию куба с перевернутыми нормалями внутрь. Это позволило наблюдать внутреннюю поверхность объекта. Сам шейдер глубины окрашен в градиент от темно-синего до светло-голубого по вертикали. Также в материале есть две анимированные текстуры каустики (1), с помощью которых создается ощущение рассевания солнечных лучей и бликов на дне водоема.
Подобным образом был сделан материал льда. Для создания ощущения множественного преломления света внутри объектов были добавлены пузырьки геометрии с нормалями, перевернутыми внутрь.
Материал здесь достаточно простой. Он состоит из текстуры Matcap (1), которая окрашивается в голубоватые тона и подаётся напрямую в Output. Так имитируется отражение света.
По такому же принципу создавался материал драгоценного камня. Только нодовая структура здесь немного сложнее.
На изображении вы видите объекты с двойной геометрией. Материал внешней части использует ноду Refraction для преломления изображения внутренней. Изучим структуру материала.
1. Главная составляющая материала — нода Refraction, которая преломляет внутреннюю поверхность камня, имитируя многослойность кристалла. Для этого используется карта нормалей со множеством повернутых граней. С помощью ноды Mapping выполняется смещение текстуры по нормалям, что создает ощущение глубины.
2. Кубическая карта для создания эффекта отражения на стекле.
3. Вторая кубическая карта используется для получения эффекта дисперсии. Она подключена к специальной ноде Glow, которая создаёт эффект ярких вспышек света.
Строение внутреннего материала драгоценного камня напоминает аналогичный из материала льда. В основе его лежит черно-белая кубическая карта отражений (2), которая окрашивается при помощи другой кубической карты отражений (1). Это позволяет получить различные блики. Для эффекта дисперсии здесь присутствует текстура с цветовыми пятнами, как и во внешнем материале.
Теперь разберемся с материалом меха.
В основе материала: диффузная карта (1) и карта нормалей (2). Дополняет их карта прозрачности, которая состоит из двух смешанных между собой текстур с небольшим смещением. Для создания эффекта анизотропного блика используется специальный Matcap (4). Его жесткость регулируется нодой SmoothStep.
Однако, основной эффект здесь создается не материалом, а многослойной геометрией.
Если сделать разрез геометрии шапки, можно увидеть, что она сделана в несколько рядов. Самый нижний слой не имеет прозрачности и служит основой. Все остальные создают своеобразный эффект параллакса, имитируя мех.
Заключение
Итак, на этом мы заканчиваем изучение материалов нашей библиотеки. Надеемся, что маленькие хитрости, о которых вы узнали, помогут создавать свои материалы любой сложности. Комментируйте, оставляйте отзывы и пожелания, а так же предложения по расширению библиотеки материалов.