Unity ASE案例解析—Highlight Animated(高亮动画效果)

效果图:

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第1张图片

目录

 

一、贴图部分

 二、自发光部分

1、高亮动画—Highlight Level (Ping pong animation)

2、高亮光晕效果—Highlight (Rim)

(1)View Dir 节点 

(2)Normalize 节点 

(3)Saturate 节点  

2、自发光效果混合—Emission Mix & Highlight Switching

(1)Toggle Switch 节点


一、贴图部分

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第2张图片

由于高亮只和自发光有关,所以这些贴图除了自发光外其他的不用多做处理。

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第3张图片

 二、自发光部分

1、高亮动画—Highlight Level (Ping pong animation)

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第4张图片

这个高亮所需要的动画类似于乒乓球效果。所以需要用到Sin函数。

Time 节点

时间节点以秒为单位输出Unity内部经过的时间,可以通过Scale进行修改。

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第5张图片

Input Port Description Type
Scale Scale乘以当前时间值。 Float
http://wiki.amplify.pt/index.php?title=Unity_Products:Amplify_Shader_Editor/Time

Sin 节点

Sin节点输出在其Input上指定的值的正弦值。输入值必须以弧度单位制为单位。

多通道数据类型上的Sin会生成与每个通道应用运算符相同类型的输出。

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第6张图片

2、高亮光晕效果—Highlight (Rim)

效果图:

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第7张图片

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第8张图片

光晕效果

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第9张图片

(1)View Dir 节点 

“View Dir ”节点在由“  Space ”参数定义的坐标空间上输出当前摄像机的视图方向。
World Space coordinates将是最常用的选项,但是“切线空间”也非常有用,主要用于法线贴图(通常在切线空间中)上的操作。

http://wiki.amplify.pt/index.php?title=Unity_Products:Amplify_Shader_Editor/View_Dir

Node Parameter Description Default Value
Space 指定视图目录应输出到的坐标空间
  • 世界:基于绝对世界坐标的坐标空间。
  • 切线:基于表面切线平面的坐标空间。
World Space
Safe Normalize 确保即使场景没有摄像机,视图向量也不为零 False
Output Port Description Type
XYZ 返回选定坐标空间中的相机视图方向 Float3
X Returns only the X component of the camera view direction Float
Y Returns only the Y component of the camera view direction Float
Z Returns only the Z component of the camera view direction Float

(2)Normalize 节点 

 Normalize节点(快捷方式:N键)计算在其Input处指定的标准化向量,该向量具有相同的方向,但范围/长度为1。换句话说,它输出Input / Length(输入)

Input Port Description Type
Input Vector to be normalized. Float4 [1]

(3)Saturate 节点  

 Saturate 节点输出在其输入上设置为[0 1]范围的值或矢量的各个分量。

  • 0:如果Input小于0,则返回此值
  • Input:如果值介于0和1之间,则返回此值
  • 1:如果值大于1,则返回此值

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第10张图片

Input Port Description Type
Input Value to be used in the Saturate calculation. Float [1]

2、自发光效果混合—Emission Mix & Highlight Switching

Unity ASE案例解析—Highlight Animated(高亮动画效果)_第11张图片

(1)Toggle Switch 节点

拨动开关根据其内部属性上设置的当前拨动值输出其输入之一。以后可以通过其分配的材料在构建时间中更改此值。

Input Port Description Type
In 0 如果将0设置为切换值,则要在输出上设置的值 Float [1]
In 1 如果将1设置为切换值,则要在输出上设置的值 Float [1]

最后,把自发光混合连接到对应输出节点上。效果就完成了。

https://img-blog.csdnimg.cn/20200110105547708.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQwMTIwOTQ2,size_16,color_FFFFFF,t_70

 

你可能感兴趣的:(Shader)