Создание материалов

При работе в UE5.4+ убедитесь, что в редакторе включён Nanite, иначе рабочие процессы с дисплейсментом не будут работать.

Вы можете ввести "actor enable nanite" в строке Dash и выполнить предложенную команду.

Dash содержит широкий набор пользовательских материалов — от простых PBR-настроек до сложных систем blend-материалов. Эти материалы созданы для работы с определёнными библиотеками контента, такими как Fab, Polyhaven и Megascans. В будущем мы планируем сделать их совместимыми с любыми пользовательскими объектами.

Базовые материалы / Редактирование материала

Мы предоставляем богатые материалы для декалей, плиточных поверхностей, 3D-мешей и 3D-растений.

Чтобы начать, вы можете нажать на значок Контента в строке Dash и открыть Content Browser. В правом верхнем углу Dash Content Browser вы можете переключаться между доступными библиотеками. Те, которые мы сейчас поддерживаем для Material Edit и Blend Material, — это Megascans из FAB или Quixel Bridge и Poly Haven. Чтобы применить текстуру к поверхности, мы сделали процесс максимально простым и понятным. Вы перетаскиваете текстуру из библиотеки контента и отпускаете её на целевой поверхности.

После применения материала к поверхности вы можете нажать кнопку Edit в строке Dash, чтобы открыть нашу панель инструментов, и в панели инструментов, открыв список Active Tools (в левом верхнем углу панели), имея выбранную плоскость, вы можете открыть Material Edit; где вы можете управлять различными аспектами вашего материала, такими как: Оттенок, насыщенность, яркость, шероховатость, нормали и т.д. В той же панели мы также включили некоторые интересные расширенные эффекты, такие как снег и дождь. Как показано в видео ниже.

Базовый материал

Blend-материалы

Это мощный материал, так как он предоставляет расширенные функции, такие как возможность смешивания трёх текстур. Возможность смешивания через vertex painting. И, подобно Edit Material, этот инструмент также включает эффекты дождя, снега и луж.

Чтобы начать использовать этот шейдер, откройте Content Browser и выберите до 3 поддерживаемых материалов. Перетащите их на поверхность, удерживая клавишу Control (ctrl) на клавиатуре. Появится меню, как показано ниже.

Выберите опцию Apply Blend Material. Теперь всё готово. Следующее, что вы, возможно, захотите сделать — это настроить параметры по своему вкусу. Для этого нажмите кнопку Edit в строке Dash. Откроется наша панель инструментов. Выбрав поверхность/ассет, на который вы применили Blend Material, нажмите на 3 линии в левом верхнем углу, затем выберите опцию Edit Blend Material.

Редактирование Blend Material в панели инструментов

Видео ниже даёт представление о процессе создания поверхности, применения Blend-материала и некоторых параметров смешивания.

Основы Blend-материала

В инструменте Blend Material, если прокрутить вниз, вы найдете параметр под названием Displacement. Он позволяет контролировать дисплейсмент вашего базового слоя (первого материала, который вы выбрали в Dash Content Browser).

Дисплейсмент

Displacement mapping помогает добавить материалам больше глубины. Этот процесс обычно опирается на текстуру, называемую displacement map или height map. Функциональность работает по-разному в разных версиях UE5.

В UE5.1, UE5.2 и UE5.3 дисплейсмент доступен, но не работает на мешах с включённым Nanite. Если вы хотите использовать дисплейсмент в этих старых версиях, всегда убедитесь, что Nanite не включён на ваших статических мешах. Внутри мы используем World Position Offset в графе нодов для реализации дисплейсмента в этих версиях. Это по сути перемещает вершины вашего меша, в отличие от генерации новой, более плотной геометрии на ходу. Важно использовать поверхность с достаточным количеством треугольников. Используя плоскость из Create -> Mesh Primitives -> Plane, вы получите плотную плоскость.

Для этого UE5.4, UE5.5 и выше поддерживают Nanite-дружелюбный дисплейсмент, как и наши обычные материалы и blend-материал. Для 5.4 и 5.5+ вам следует включить Tessellation в вашем проекте и также иметь Nanite включённым на вашем статическом меше. В противном случае дисплейсмент не будет работать.

Чтобы включить Tessellation в проекте, мы сделали ярлык, к которому вы можете получить доступ, введя Tessellation, а затем выбрав Enable Project Tessellation.

Чтобы включить Nanite на выбранном статическом меше в уровне, мы сделали ещё один ярлык под названием Actor Enable Nanite. Вы всегда можете использовать UE Content Browser и щёлкнуть правой кнопкой мыши по ассету, затем включить Nanite для самого ассета. Но это немного медленнее, и этот способ работает прямо в Dash.

Ещё стоит учитывать, что когда вы создаёте дорогу или плоскость в Dash, это не статические меши, а собственный пользовательский формат. Это означает, что на них нельзя включить Nanite, и следовательно дисплейсмент в 5.4+ тоже не будет работать. Вы можете "запечь" Dash-меши (например, примитивы, которые вы находите в Create -> Mesh Primitives) с помощью Dash bar -> Create -> Common -> Bake Meshes. Это конвертирует выбранный меш в статический меш.

Если ваш меш не является простой плоскостью или другим примитивом Dash, а представляет собой активный инструмент, например Road Tool, Terrain Tool или Cable Tool, они также генерируют Dash-меши, и запекание в этом случае выполняется из панели инструмента — нажатием на иконку Bake и подтверждением появившегося диалога. Это удалит ваш инструмент и конвертирует его результат в обычный статический меш UE5. Операция необратима, поэтому мы рекомендуем выполнять её после завершения редактирования дороги, ландшафта или кабелей.

Вот видео, показывающее, как выглядит дисплейсмент в UE5.1+. Как видно, качество довольно посредственное, потому что у нашей плоскости недостаточно вершин. Вы можете использовать инструменты моделирования UE5 для увеличения плотности, но это не будет так хорошо, как Nanite-дружественный дисплейсмент в 5.4+.

Дисплейсмент в UE 5.1

Вот как выглядит дисплейсмент в UE5.4+. В проекте включён nanite, а меш является статическим мешем с включённым nanite. Качество максимально хорошее.

Включите Nanite и Tessellation в UE 5.4+

Продвинутые функции Blend-материала

Снег, дождь и лужи — это полезные и интересные функции, которые мы добавили в наши Blend-материалы. Снег представлен S Weight, дождь — T Weight, а лужи — B Weight.

Видео ниже демонстрируют эффекты снега и дождя в действии.

Снег

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

Если прокрутить вниз, вы найдёте свойство под названием Snow (S) Layer. Это выпадающее меню даёт вам больше контроля над поведением снега.

Давайте рассмотрим некоторые важные опции:

  • S Height Multiplier Позволяет увеличить глобальный множитель высоты снега и дисплейсмента Blend-материала.

  • S Height контролирует высоту снега

  • S Height Contrast контролирует резкость снега. Значение может быть отрицательным, что инвертирует способ применения на поверхности.

Эффект снега

Дождь

T Weight позволяет контролировать количество дождя и луж на вашей поверхности.

Прокрутите до Rain (T) Layer чтобы найти дополнительные свойства для настройки. Выпадающее меню даёт больше контроля над поведением дождя.

Это самые важные свойства, которые можно настроить по своему вкусу:

  • T Drip Tiling чтобы настроить размер капель

  • T Drip Length чтобы настроить длину потёков

  • T Drip Strength чтобы настроить интенсивность для нормал-карты потёков

  • T Droplets Tiling чтобы настроить размер капель.

  • T Ripple Motion чтобы настроить скорость рябей.

  • T Ripple Size чтобы настроить размер рябей.

Эффект дождя

Tiling Breakup

Независимо от того, используете ли вы Dash Base Materials (Edit Material) или Dash Blend Material, вы найдете функцию Tiling Control. Эта функция позволяет легко включать и настраивать эффект разрушения тайлинга. Идеально, чтобы избежать повторяющихся узоров на текстурах.

Runtime Virtual Textures (RVT)

В обновлении 1.9 мы представили рабочий процесс с RVT, что позволяет получать плавное смешение между поверхностью и ассетом. Для начала необходимо убедиться, что RVT включён в настройках проекта. Для этого перейдите: Edit -> Project Settings, затем введите Virtual texture и отметьте галочкой Enable Virtual Texture Support

В зависимости от версии движка рабочий процесс будет немного отличаться. Например, если вы используете UE 5.3 и ниже: выберите поверхность, на которой хотите включить RVT, затем в Dash Toolbar введите RVT и появится опция RVT Setup. Выберите её. Теперь у вас есть RVT на поверхности.

Однако есть ещё один шаг для корректной работы: в Outliner вы найдёте 2 Runtime Virtual Texture Volumes. Выберите один и в панели Details нажмите Set Bounds. Повторите это для другого Volume.

Ваш RVT готов. Вы можете перетащить ассет на поверхность и переключать RVT для этого ассета в инструменте Material Edit. Для подробностей смотрите видео ниже.

Это пока работает только с ассетами Megascans и Poly Haven, так как мы ещё не поддерживаем Material Edit для других ассетов.

RVT в UE 5.3 и ниже

Для Unreal 5.4 и выше границы (bounds) устанавливаются автоматически. Вы можете просто выбрать поверхность и активировать RVT на ней из строки поиска Dash. Смотрите видео ниже для подробностей.

RVT в UE 5.4 и выше

В нашем рабочем процессе Blend Material с RVT при изменении веса и добавлении травы или другого слоя текстуры, чтобы изменения вступили в силу, выберите ассет в сцене, затем выберите Edit Material в панели инструментов — и ваши изменения появятся при переключении в Blend Material, это создаёт событие обновления. Более подробная демонстрация в видео ниже.

Обновление RVT на BlendMaterials

Часто задаваемые вопросы

Как редактировать Blend Material

Чтобы редактировать Blend Material в Dash, нажмите кнопку Edit вверху в строке Dash. Откроется панель инструментов. Выбрав поверхность/ассет, на который вы применили Blend Material, нажмите на 3 линии в левом верхнем углу, затем выберите опцию Edit Blend Material. Там доступен широкий набор параметров для редактирования, таких как: Свойства слоя — оттенок, насыщенность и тайлинг для создания сложных текстур.

Чтобы отредактировать blend-материал у ассета, который вы ранее разместили в сцене Выполните следующие шаги:

  • Выберите объект с blend-материалом, который вы хотите отредактировать.

  • Откройте инструмент Blend Material в панели Dash Tools.

  • Отрегулируйте веса для слоёв R, G, B, S и T, чтобы изменить смешивание.

  • Измените свойства, такие как оттенок, насыщенность и яркость для каждого слоя.

  • Измените настройки тайлинга и дисплейсмента для детализации текстур.

Megascan не включает карту дисплейсмента Fab через Unreal Engine.

Вы можете создать эффект дисплейсмента в UE5, преобразовав нормаль-карту в height map и используя тесселляцию.

  • Импортируйте вашу модель и убедитесь, что у вас есть качественная нормаль-карта.

  • Используйте внешнюю программу, такую как CrazyBump, или плагин для Photoshop, чтобы преобразовать нормаль-карту в height map.

  • В UE5 примените height map в материале и активируйте tessellation и world displacement в настройках материала.

  • Отрегулируйте параметры дисплейсмента, чтобы тонко настроить эффект на вашей модели.

Обратите внимание, что вы всё ещё можете скачать карту дисплейсмента с FAB.

Перейдите на сайт FAB и выберите поверхность, которую хотите. Нажмите скачать и проверьте загруженные ZIP-файлы. Вы увидите там карту дисплейсмента. Но на данный момент у нас нет способа использовать эту карту дисплейсмента для управления дисплейсментом через Dash.

Как добавить дисплейсмент к моему мешу?

Во-первых, Dash «знает» о вашем дисплейсменте только если вы используете его материалы — будь то blend-материал или другие базовые материалы. Если ваш меш использует один из них, выполните следующие шаги:

  • Откройте Dash Bar и перейдите в Edit > Edit Material.

  • Выберите объект, к которому вы хотите применить дисплейсмент материала.

  • В инструменте Edit Material найдите свойство Displacement.

  • Отрегулируйте значение Displacement, чтобы добиться желаемого эффекта.

  • Возможно, вам также потребуется убедиться, что ваш материал настроен для поддержки displacement mapping, с использованием соответствующих текстур и настроек.

  • Сохраните изменения — и дисплейсмент должен отобразиться на вашем меше!

Удачного творчества! 🎉

Могу ли я использовать Blend Material с пользовательским контентом?

Нет, в настоящее время наш инструмент Blend Material поддерживает только материалы Megascans и Poly Haven через Dash Content Browser. Поддержка пользовательских материалов появится позже!

Как использовать blend-материал

Чтобы использовать инструмент Blend Material в Dash, выберите 3 материала из Content Library, удерживайте CTRL, перетащите их в сцену и выберите Blend Material.

  • Выберите 3 материала из Dash Content Library.

  • Удерживайте CTRL и перетащите выбранные материалы в сцену.

  • Отпустите мышь и выберите опцию Blend Material.

  • Используйте инструмент для настройки таких свойств, как цвет, контраст и тайлинг.

  • Настройте смешивание, изменяя параметры отдельных слоёв.

Проверьте Blend Materials для получения дополнительной информации

Как я могу редактировать материал?

Чтобы редактировать материал с помощью Dash, выполните следующие шаги:

  • Выберите объект, к которому хотите применить материал.

  • Откройте Dash Bar и перейдите в панель Tools Panel.

  • Нажмите на значок меню в левом верхнем углу, чтобы просмотреть активные инструменты и найти инструмент "Edit Material".

  • Отрегулируйте свойства материала по необходимости в панели Tools Panel.

  • P.S. Material Edit работает только с ассетами/материалами Megascans и Poly Haven, используемыми из Dash Content Browser.

Мои ассеты выглядят как чёрный шум, когда я включаю RVT на них.

Это обычно происходит, когда границы (bounds) были настроены неправильно. Если ваша поверхность не плоская, выберите RVT Volume в Outliner, в панели Details в разделе Volume Bounds нажмите на инструмент Пипетка и выберите вашу поверхность. Вы увидите её имя под Bounds Align Actor в панели Details. Затем нажмите Set Bounds.

RVT не работает, хотя я сделал всё по документации.

Если RVT не работает вообще после выполнения инструкций, проверьте, включён ли Nanite на вашей поверхности. Обратите внимание, что RVT не работает на поверхностях с Nanite. Ваши ассеты могут иметь включённый Nanite, но не сама поверхность. Вы можете попробовать отключить Nanite на поверхности, чтобы проверить, заработает ли RVT. В противном случае вы всегда можете связаться с нами в нашем Discord или написав нам по электронной почте: [email protected]

Последнее обновление

Это было полезно?