К списку заданий

Задание №5: Создаем материал для всего

Дедлайн 30.10.2025 в 20:59

Задания с урока

Задание 1

  1. Создать материал, добавить на ключевые параметры по скаляру или вектору (3).

  2. Добавить комментарии «C».

  3. Добавить текстуру, подсоединить её в BaseColor и добавить Normal Map и Metallic.

Задание 2

  1. Создать Material Instance

  2. Преобразовать ноды в параметры и указать им группу

  3. Посмотреть, как это работает, добавив в сцену

  4. Создать пол с кровью («Lerp» — нода смешивания) («Noize» — текстура для этого) (не забудьте про ноды «1-», «Multiply», «Clamp»)

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

Задание 3

  1. Добавьте в ваш материал настройки тайлинга (нода Texture Coordinate).

  2. Сделайте 2 параметра, отдельно ось U и V. 

  3. Создайте Material Function и сделайте загрязнение материала кровью из прошлого задания в этой функции.

  4. Замените этот момент функцией в материале.

  5. Создайте Material Parameter Collection.

  6. Исправьте созданную функцию добавления крови так, чтобы значение степени загрязнения крови бралось из Parameter Collection.

Домашнее задание

Цель: Научиться создавать гибкие, настраиваемые материалы с помощью параметров и инстансов, а также добавить интерактивности с помощью глобальных параметров.

Примерные затраты на выполнение: 40 – 60 минут.

Задача:

Создать один "мастер-материал" для земли/пола, который можно будет гибко настраивать. Затем, с помощью инстансов, создать несколько его вариаций и применить их в вашей сцене.

Шаги выполнения:

  1. Подготовка (5 минут):

    • Откройте вашу сцену из предыдущих ДЗ.

    • В Quixel Bridge или Fab найдите и добавьте в проект две разные текстурные сетки для земли, которые можно смешать. Например: Ground (земля) и Moss (мох) или Asphalt (асфальт) и Puddles (лужи). Если не нашли нужного можете использовать ассеты из Starter Content.

  2. Создание мастер-материала (20 минут):

    • Создайте новый базовый материал MM_Ground. Это материал-формула он сам никак не отображается а лишь используется для интсансов, как асбтрактный класс.

    • Внутри него создайте логику, которая смешивает две текстуры по маске:

      • Добавьте два набора текстур (Base Color, Normal, Roughness) для ваших двух поверхностей (например, земля и мох).

      • С помощью ноды Lerp (Linear Interpolate) смешайте соответствующие карты. Например, BaseColor_Земли в A, BaseColor_Мха в B.

      • Для управления смешиванием (вход Alpha у Lerp) используйте простую шумовую текстуру (например, T_Cloud_Noise из Starter Content) или один из каналов (R, G или B) текстуры Ambient Occlusion.

    • Превратите всё в параметры:

      • Текстуры: ПКМ на каждой ноде Texture Sample -> Convert to Parameter.

      • Тайлинг: Добавьте ноду TextureCoordinate, умножьте её на ScalarParameter(просто скалярное число одиночное) с именем Tiling и подключите результат в UVs всех текстур.

      • Цвет: Умножьте итоговый Base Color на VectorParameter с именем ColorTint (цвет по умолчанию — белый).

      • Шероховатость: Добавьте ScalarParameter с именем RoughnessMultiplier и умножьте на него итоговую карту Roughness.

  3. Создание и применение инстансов (10 минут):

    • На основе M_Ground_Master создайте два Material Instance:

      • MI_Ground_Dry (Сухая земля)

      • MI_Ground_Mossy (Земля, поросшая мхом)

    • Откройте каждый инстанс и настройте его параметры, чтобы получить уникальный вид. Например, в MI_Ground_Mossy можно увеличить Tiling мха или изменить его ColorTint на более яркий.

    • Примените эти инстансы к разным мешам и наслаждайтесь собой. В следующем дз вам может понадобиться этот материал для разукрашивания ландшафта.

  4. Глобальный параметр: Эффект "дождя" (5-10 минут):

    • Создайте Material Parameter Collection с именем MPC_Global.

    • Внутри него создайте один ScalarParameter с именем GlobalWetness (значение по умолчанию 0).

    • Вернитесь в master material MM_Ground. Добавьте ноду CollectionParameter, выберите в ней MPC_Global и параметр GlobalWetness.

    • Используя Lerp, смешайте вашу итоговую Roughness с константой 0.1 (очень гладкая, мокрая поверхность) на основе GlobalWetness. Таким образом, когда GlobalWetness=0, шероховатость обычная, а когда GlobalWetness=1, поверхность становится мокрой.

    • Проверка: Откройте ассет MPC_Global и вручную измените значение GlobalWetness с 0 на 1. Вы должны увидеть, как все поверхности, использующие ваш материал, мгновенно становятся "мокрыми".

Что нужно сдать:

  • 3 скриншота:

    1. Скриншот графа вашего мастер-материала M_Ground_Master.

    2. Скриншот вашей сцены, где применены два разных инстанса материала.

    3. Скриншот той же сцены, но с измененным параметром GlobalWetness в коллекции (чтобы показать "мокрый" эффект).

Ключевые навыки для проверки:

  • Умение создавать параметризированный материал.

  • Практическое использование Material Instance для создания вариаций.

  • Понимание, как Lerp используется для смешивания.

  • Базовое применение Material Parameter Collection для создания глобального эффекта.

Поступи на курс, чтобы сдавать задания на проверку преподавателям