В Content Browser создаем новый материал.
Открываем материал и вызываем ноду «Pixel Normal WS».
Pixel Normal WS — выводит векторные данные, представляющие направление, в котором смотрит камера.
Следом вызываем ноду «Camera Vector WS».
Camera Vector WS — выводит трехканальное векторное значение, представляющее направление камеры относительно поверхности,
другими словами, направление от текстуры к камере.
Cоединяем Pixel Normal WS * Camera Vector WS используя узел «DotProduct»
DotProduct — используется для вычисления скалярного произведения, которое можно описать как длину одного вектора
спроецированного на другой, или как косинус между двумя векторами, умноженный на их величины.
Этот расчет используется во многих методах расчета спада.
DotProduct требует, чтобы оба векторных входа имели одинаковое количество каналов.
Создаем ноду «AppendVector«
Узел AppendVector позволяет объединять каналы для создания вектора с большим количеством каналов.
Ниже вызываем узел «TextureCoordinate»
TextureCoordinate — позволяет выводить координаты UV-текстуры в виде двухканального векторного значения,
позволяющего материалам использовать разные UV-каналы, задавать мозаику и иным образом работать с UV-объектами сетки.
Cоединяем между собой полученное направление и масштаб используя узел «Add»
Далее вызываем ноды HueShift и Constant3Vector
HueShift — смещает текущее значение оттенка входного цвета на заданный процент.
Этот процент отсчитывается от 1 и сосредоточен вокруг цветового круга.
Например, сдвиг на 0,5 (50%) приведет к переходу к дополнительному оттенку или оттенку на противоположной стороне цветового круга.
Сдвиг на 1,0 (100%) не дает никаких изменений, поскольку это эквивалент полного вращения цветового круга.
Constant3Vector — используем вместо текстурны для насыщения и перехода оттенка.
Выберем цвет, например светло-желтый.
Создаём ноду «Fresnel»
Fresnel — это метод краевого освещения который включает в себя добавление дополнительных источников света,
которые помогают отличить силуэт обьекта от фона.
Мы слегка подсветим по контуру и для контроля силы свечения добавим ноду «Power«
Также добавим «Scalar Parameter» чтобы в будущем, в экземпляре материала изменять данную настройку.
Далее добавим «LerpInterpolate»
LerpInterpolate — Линейная интерполяция между A и B на основе Alpha канала (100 % от A, когда Alpha=0, и 100 % от B, когда Alpha=1).
В данном случае мы производим смешивание общего rgb канала заливки с каналом заливки по контуру.
Также создадим «Scalar Parameter» и установим желаемое значение перехода.
Подключаем узлы в пин «Base Color»
Для каналов металик (Metallic) и отражение (Specular) добавим отдельный параметр со значением — 1.
Для параметра «Roughness» добавим интерполяцию, где канал А оставим со значением 0,0
сохранив легкую шероховатость по краям, а для канала B добавим параметр и также установим желаемое значение.
Сохраняем материал и возвращаемся в «Content Browser»
Создаем экземпляр материала и перетаскиваем экземпляр на обьект.
При желании, открываем экземпляр и играемся с настройками для достижения желаемого результата.





















