Анимация UV-координат в Unreal Engine 4

0
4
Анимация UV-координат в Unreal Engine 4

Возможность добавлять движение к своим Материалам является обязательной, особенно когда вы пытаетесь воссоздать такие эффекты, как огонь, вода или дым. Очень дешевый и эффективный способ сделать это внутри Unreal Engine 4 (UE4) – это использовать узел выражения материала Panner. Узел выражения материала Panner позволяет перемещать UV-координаты вашей текстуры в направлении U или V или в комбинации обоих.

Что такое анимация UV-координат

Анимация UV-координат или UV-панорамирования означает перемещение UV-координат текстуры горизонтально (U), вертикально (V) или их комбинацию, чтобы создать иллюзию, что происходит сложная анимация. В следующем примере текстура Огня разворачивается в направлении U (по горизонтали), заставляя огонь выглядеть так, будто он движется.

Разбивка Узла Panner

Ниже показано, как выглядит Узел Panner после добавления в График Материалов. Узел Panner принимает два входа – Coordinates, Time (Координаты и Время) и выводит результат. Вы можете добавить Узел Представления Материала Panner в График Материалов, выполнив поиск Panner в палитре Pallete или нажав клавишу P на клавиатуре, когда мышка находится внутри окна Material Graph.Разбивка Узла Panner

СвойствоОписание
CoordinateПринимает базовые координаты UV текстуры, которые выражение может затем модифицировать.
TimeПринимает значение, используемое для определения текущей позиции панорамирования. Обычно это выражение времени, чтобы обеспечить постоянный эффект панорамирования, но Constant (константный) или Scalar Parameter (скалярный параметр) можно также использовать для задания определенного смещения или для управления панорамированием через Matinee или Blueprints.

Разбивка Узла Panner UE4

СвойствоОписание
Speed XСкорость перемещения координат текстуры в горизонтальном или X направлении.
Speed YСкорость перемещения координат текстуры в вертикальном или Y направлении.
Const CoordinateИспользуется только в том случае, если координата не подключена.
Fractional PartДля большей точности выводит только дробную часть расчета панорамирования. Выход больше или равен 0 и меньше 1.

Как использовать анимированные координаты UV в вашем материале

Настройка текстуры для использования UV-панорамирования – это то, что можно выполнить в несколько следующих шагов.

В этом руководстве будет использоваться контент, который можно найти, если вы включили Starter Content в свой проект. Если вы не включили Starter Content в свой проект, вы можете просмотреть страницу контента Migrating для получения информации о том, как перемещать контент между проектами. Таким образом, вы можете добавить исходный контент в свой проект и не создавать новый.

Сначала создайте новый материал в Контент браузере. Для этого щелкните правой кнопкой мышки в окне Контент браузера, а затем выберите Material в меню Create Basic Asset, а затем назовите Panner_Material. По завершении вы должны получить что-то похожее на это в Контент браузере.создать новый материал UE4

2. Создав Материал, откройте его, дважды щелкнув по нему левой кнопкой мышки в контент браузереКак только Материал откроется, вернитесь в контент браузер и нажмите на папку Game, а затем используйте следующий поисковый запрос T_Fire_Tiled_D, чтобы найти Огненную текстуру.Текстура огня UE4

3. После того, как была найдена текстура огня, перетащите ее из контент браузера в Материал, сначала выбрав ее с помощью левой кнопки мышки, а затем нажатой левой кнопкой мышки, перетащите ее в Материал. Уже над Материалом отпустите кнопку левой мышки, чтобы поместить Текстуру в График Материала.

4. Когда текстура теперь помещена в График Материалов, перейдите к Palette и найдите Panner. После того, как вы найдете Panner Material Expression, выберите его с помощью левой кнопки мышки, а затем перетащите его в График Материалов. По завершении Графика Материала отпустите левую кнопку мышки, чтобы поместить Panner Material Expression в График Материалов. После заполнения ваш График Материала должен выглядеть так.

5. Теперь, когда все необходимые узлы добавлены, настало время начать соединять все вместе. Сначала подключите Белый выход Текстуры огня к инпуту / входу Базового Цвета. Затем подключите вывод Panner к входу UVs к Текстуре огня. Когда вы закончите, у вас должно получиться что-то похожее.соединение узлов UE4

6. Когда все подключено, настало время сделать панель Огненная текстура. Для этого сначала выберите Material Expression Panner, а затем на панели Details установите параметр Speed X равным 0,1.параметр Speed X UE4

7. Как только вы установите скорость X на 0,1, вы должны увидеть, что Текстура Огня начнет двигаться горизонтально в окне предварительного просмотра.

8. Теперь Материал готов к компиляции, сохранению и использованию.

Советы и подсказки

Использование панорамирования в сочетании с другими выражениями материала – отличный способ добавить дополнительный контроль над тем, как работает панорамирование. В приведенном ниже примере Материал, который был создан выше, был сделан еще на один шаг дальше, добавив элементы управления, чтобы помочь контролировать скорость, а также titling (титры). Увеличивая число, умноженное на выражение TexCoord и Time Material Expression, вы можете настроить скорость и titling текстуры огня.

Анимация UV-координат в Unreal Engine 4Вы также можете скомпоновать выражение материала Panner, чтобы сделать иллюзию движения еще более сложным. В этом примере копия всех исходных узлов Выражения Материала была создана, сначала выбором всех узлов Выражения Материала и нажатием CTRL + W на клавиатуре. Затем направление панорамирования на вновь созданных узлах было изменено со скорости X = 0,1 на скорость Y = 0,1, чтобы изображение перемещалось вертикально, а не горизонтально. Затем значения, которые были умножены на Time и TexCoord, увеличились с 1 до 2. Наконец, обе текстуры, умноженные вместе, дают конечный результат ниже.

Заключение

Анимация UV Coordinates – отличный способ ввести движение в ваши Материалы. Это также чрезвычайно полезно для визуальных эффектов, которые требуют сложного движения, такого как дым или огонь. Однако имейте в виду, что анимация UV Coordinates работает лучше всего на объектах, имеющих смежные UV-настройки. Любое отклонение в UV-координатах мешей будут отображаться при анимации UV-координат.