Stylized Water Material

Добро пожаловать, сегодня я вам расскажу как я сделал свой стилизованный материал воды внутри UE4. Наряду с UE4, я моделировал меши в Maya, и рисовал текстуры в Photoshop.
Мой материал состоит из 3 основных частей — базовый цвет, смещение для волн, и каустика воды. Material properties я использовал подобные :
— Material Domain – Surface
— Blend mode – Translucent
— Shading model – Default lit
— Two Sides – Yes

Image

[свернуть]
Настройки базового цвета довольно простые. У меня есть два оттенка цвета моей воды, один — источник света, второй темный. Я использовал Lerp между ними, и в качестве прозрачности использовал Fresnel (Exponent 5, Base Reflect Fraction 0.04), так что моя вода более темная посередине и светлее по краям.
Затем я разделил результат с Depth Fade (Opacity 1, Fade Distance 100). Разделив depth fade вместо умножения, это означает что я получаю белую рамка в пересечении объектов, вместо затемнения.
Image

[свернуть]
Затем я умножил все это на параметр Diffuse Multiply для контроля яркости.

Offset

Биение на поверхности воды создается с помощью простого узла Grass Wind, который маскируется с помощью Vertex Color через Lerp. Vertex Color работает в Lerp так, что когда цвет вершины — 0, A =100%, B=0% и при цвете вершины -1, A=0%, B=100%.

Image

[свернуть]

Caustic

Моя каустика была создала с помощью туториала papptimu’s water causti. И результат отправлен прямиком в Emessive.
Тем не менее спустя время, посмотрев на Stylized Rendering в Content Example, я решил что хочу добавить фигуры на канал RGB текстуры, а затем для каждого сделать анимацию яркости.

Image

[свернуть]
Таким образом, как можно видеть ниже, первая часть моего материала, остается неизменной. Однако после того как идет Motion_4WayChaos, я маскировал каждый канал и анимировал отдельно.
В моем примере, я хочу чтобы синий канал был виден всегда, поэтому я умножаю это на 0.3, чтобы убавить непрозрачность.

Для красного и зеленого каналов, я хочу чтобы они исчезали и выходили за пределы. Я использую Sine wave для создания цикла смещения зеленого канала на 1. Затем я собрал все текстуры вместе, и умножил их на цвет каустики, после чего подключил к Emessive Color инпуту.

Image

[свернуть]
Для того чтобы получить вытянутые линии на нижней стороне воды, я немного иначе сделал UV моего меша. Я даю очень мало UV пространства нижней стороне, для того чтобы линии растягивались в этом месте.


Читайте также: