Полезное

Мы Вконтакте

Discord канал

Material Parameter Collection

Добавлено Апр 12 2016

Material Parameter Collection(коллекции параметров) является ассетом, который хранит произвольный набор скалярных и векторных параметров, которые могут быть использованы в любом материале.
Это мощный инструмент, который художники могут использовать, чтобы менять глобальные данные во многих материалах сразу. Он также может быть использован для управления уровнем эффектов, таких как количество снега,
суммарное смешивание, сырость и т.д., которые в противном случае потребуют установки отдельных параметров во многих различных материалах на вашем уровне.

Material Parameter Collection

Material Parameter Collection

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

  • Морфинг цветов на основе скорости ветра и времени суток.
  • Позиция игрока отслеживается и это отражается на листве. То есть трава «расступается», когда игрок идет по ней.
  • Общий цвет диффузийного осещения зависимости от времени суток.

Создание и редактирование Material Parameter Collection

Material Parameter Collection создаются через Content Browser с помощью Add меню или в контекстного меню вызываемом правой кнопкой мыши, после они могут быть отредактированы и сохранены, как и любые другие ассеты.

  1. Для создания Material Parameter Collection, вы должны сначала нажать правой кнопкой мыши в Content Browser, чтобы открыть меню.
    В этом меню выберите раздел Materials & Textures, а затем выберите Material Parameter Collection.

    Material Parameter Collection

  2. После выбора, будет создан новый ассет Material Parameter Collection в Content Browser.

    Material Parameter Collection

  3. Для редактирования Material Parameter Collection, вы должны сначала дважды щелкнуть по нему левой кнопкой мыши, чтобы открыть окно свойств.

    Material Parameter Collection

  4. Нажмите кнопку плюс рядом с Scalar Parameters или Vector Parameters для создания новых параметров, к которым вы хотите получить доступ из материала. Не забудьте вводить имена и значения по умолчанию.

    Параметры

Использование Material Parameter Collections в материалах

Добавление Material Parameter Collection к любому материалу делается в несколько шагов. В следующем разделе мы рассмотрим, как добавить соответствующие ноды в очень простой материал.

  1. Первое, что нужно сделать, это создать Material Parameter Collection и заполнить его данными. Для этого щелкните правой кнопкой мыши в Content Browser, а затем выберите раздел Materials & Textures,
    а затем выберите Material Parameter Collection. После создания вы должны присвоить ему имя. Для этого примера мы будем использовать MPC_Global_Material_Prams.

    MPC_Global_Material_Prams

  2. После того, как Material Parameter Collection был создан откройте его с помощью двойного щелчка левой кнопкой мыши.
    После того, как Material Parameter Collection открыт, добавьте один Scalar Parameters и назовите его Global_Desaturation.
    Оставьте значение по умолчанию Global_Desaturation на 0.0. После завершения, ваш Material Parameter Collection должен выглядеть следующим образом.

    Global_Desaturation

  3. Теперь, когда Material Parameter Collection был создан нам необходимо создать простой материал. Для этого примера мы будем создавать следующий материал. Выставьте ноды как на картинке.

    Ноды

  4. После того как основные узлы подключены, найдите в поиске ноду Desaturation и перетащите её на свободную область.
    Далее найди ваш ассет Material Parameter Collection в Content Browser и перетащите его в материал. У вас должно было получиться следующее:

    Material Parameter Collection

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

    Итоговый вид

  6. Чтобы увидеть Material Parameter Collection в действии, мы должны сначала применить материал, в котором он используется к нужным объектам в мире.
    После того, как материал был применен, откройте Material Parameter Collection с помощью двойного щелчка на нем левой кнопкой мыши внутри Content Browser.
    После открытия, мы можем изменить значение Default Value в Global_Desaturation от 0 до 1 и увидеть как объекты будут меняться.
    https://www.youtube.com/watch?v=-ZMwWcAWxvQ

Обновление Material Parameter Collection через блупринты

Один из способов, которым можно изменять Material Parameter Collection — это блупринты. Это чрезвычайно мощный способ манипулировать Material Parameter Collection, так как он позволяет это делать в любо момент времени в игре.

  1. Прежде чем мы сможем начать, мы должны сделать несколько вещей, в первую очередь. Первое, что нам нужно сделать, это создать несколько Material Instances из нашего материала.
    Для этого примера нам нужно создать три материала на основе экземпляров материала, который был создан выше. После создания измените цвет у некоторых из них. Для этого примера будем использовать красный,
    зеленый и синий. После завершения строительства, ваш Content Browser должен выглядеть следующим образом.

    Content Browser

  2. Теперь настало время применить их к различным объектам в сцене, нажав на Material Instance левой кнопкой мыши в Content Browser, а затем перетащив их на объекты в сцене. После завершения вы должны иметь что-то похожее на это.

    Material Instance

  3. Далее откройте Level Blueprint. Для этого нажмите соответствующую кнопку в меню над Viewport областью.

    Level Blueprint

  4. После того, как Level Blueprint был открыт, настало время, чтобы установить некоторые ноды. Для этого примера нам понадобятся следующие ноды и переменные.
    • Left Mouse Button Pressed
    • Timeline
    • Set Scalar Parameter Value
    • Переменная типа Float с именем: Des

    Level Blueprint

  5. Выберите в Set Scalar Parameter Value наш Material Parameter Collection и параметр который мы хотим изменить.

    Set Scalar Parameter Value

  6. Далее мы будем должны настроить нашу Timeline так, что при нажатии левой кнопкой мыши, цвета будут меняться с течением времени, а затем обратно, как только левая кнопка мыши будет отпущена.
    Чтобы настроить Timeline, сначала дважды щелкните на ней, чтобы открыть её.

    Timeline

  7. Теперь, когда Timeline была открыта, теперь мы должны заполнить её некоторыми данными. Первое, что нам нужно сделать, это добавить Float дорожку, нажав на иконку Add Track Float.
    Затем нам нужно добавить два ключа с помощью правой кнопки мыши и мыши в любом месте светло-серой области, а затем выбрав Add Key из меню.
    Мы добавили два ключа, один с Time 0.0 и Value 0.0 и один с Time 1.0 и Value 1.0. После того, как ключи добавлены, не забудьте назвать трек. Для этого примера, мы будем использовать Des_Amount в качестве имени.
    https://www.youtube.com/watch?v=oGNfh9_ctI4

  8. Timeline теперь настроена правильно, вы можете закрыть её и вернуться к графику. Далее соедините все узлы следующим образом.

    Итоговый вид

  9. Теперь, когда все подключено, скомпилируйте Level Blueprint, нажав на кнопку Compile, а затем закройте редактор. Сейчас можно протестировать результат.
    Нажмите кнопку Play и уже в игре зажмите левую кнопку мыши что бы увидеть результат.
    https://www.youtube.com/watch?v=saVjrY41jWk

Ограничения и рабочие характеристики

Материал может ссылаться, в лучшем случае, две различных Material Parameter Collection. Material Parameter Collection может иметь до 1024 скалярных параметра и 1024 векторных параметра.
Изменение количества параметров в коллекции приведет к перекомпиляции всех материалов, которые ссылаются на эту коллекцию. Если вам нужно добавить множество параметров, это лучше будет сделать на пустой карте.
Если переименовать параметр, любые материалы, относящиеся к этому параметру будут продолжать работать. Тем не менее, любой блупринт ссылающийся на этот параметр перестанет работать.
Вы должны будете переназначить в блупринте используемое имя параметра на новое. Использование Material Parameter Collection гораздо более эффективно чем изменение множества параметров во многих материалах.

Добавил: Flakky Категория: Материалы и Шейдеры


Комментарии

На данный момент комментарии отключены.

UEngine.ru © 2017
Все права защищены. При копировании материалов с сайта, ссылка на первоисточник обязательна.
Яндекс.Метрика
Главная страница