【#Unity Shader#Amplify Shader Editor(ASE)_第六篇】

简介: 【#Unity Shader#Amplify Shader Editor(ASE)_第六篇】

1.向量运算相关节点


1.1.Append


如图

将多个低纬向量合成一个高纬向量,快捷键“V”


1.2.Split(Break To Components)


如图

分别输出某个向量的所有分量,

例如:输入为XYZ三维向量,可以输出X、Y、Z三个分量。快捷键“B”


1.3.Component Mask

选择输入向量的某几个分量组成低纬向量进行输出。

例如:输入为XYZ三维向量,可以只输出XY二维向量。快捷键“K”


1.4.Swizzle

重新组织向量的所有分量,也可以降低向量的维度。

例如:输入为XYZW四维向量,输出ZYX三维向量。快捷键“Z”


1.5.Cross、Dot

  • Cross:cross()函数,将两个三维向量进行叉乘,快捷键“X”

  • Dot:dot()函数,将两个向量进行点积,快捷键为“.”


1.6.Distance

distance()函数,计算A、B两个点之间的距离。


1.7.Length

length()函数,计算输入向量的长度。


1.8.Normalize

normalize()函数,将输入的向量标准化,快捷键“N”


1.9.Reflect、Refract

  • Reflect:reflect()反射函数,输入Incident(入射方向)和Normal(表面法线方向),输出反射方向,Normal需要提前标准化。


  • Refract:refract()折射函数,输入Incident(入射方向)、Normal(表面法线方向)和Eta(折射率),输出折射方向,Incident 和 Normal 都需要提前标准化。


1.10.Transform Direction

将输入向量丛一个坐标空间转换到另一个坐标空间。

可以转换到坐标空间有:Object(模型空间)、world(世界空间)、View(摄像机空间)、Cilp(裁切空间) 和 Tangent(切线空间)。


2.图像处理相关节点


2.1.Blend Operations


将输入的Source和Destiny两张纹理进行混合,节点样式如图。

通常用于制作地形材质、墙壁上叠加污垢等效果。

ASE提供了很多混合处理效果,与Photoshop中的图像混合模式类似,并且用户还可以输入Alpha变量控制纹理的部分区域不进行混合。


2.2.Desaturate


节点样式如图:

对输入的彩色纹理进行去色处理,其中Fraction数值用于控制去色程度,数值为0时,不对纹理去色;数值为1时,完全去色。


2.3.Grayscale


节点样式如图:

将输入的RGB纹理转换为单通道的灰度图,类似Luminance()函数效果。


2.5.Simple Contrast


节点样式如图:

调节输入的纹理的对比度,其中Value数值用于确定对比度的强度。


3.摄像机和屏幕相关节点


3.1.Grab Screen Position


节点样式如图:

Grab Pass 所抓取的图像在屏幕上的坐标,通常与Grab Screen Color节点连用。


3.2.Grab Screen Color


Grab Pass 所抓取的图像,也就是Shader中的_GrabTexture变量,需要输入Grab Screen Position 节点作为采样的纹理坐标。


节点样式如图:

Grab Screen Position 是四维向量,而采样的纹理坐标需要二维向量,但是将这两个节点直接相连并不会报错。这是业务ASE有很好的容错机制,它在内部会自动将Grab Screen Position 变量的zw分量丢失,只保留xy分量。


3.3.Screen Position


节点样式如图:

Screen Position变量,获取当前屏幕上的坐标,适合做一些屏幕特效。


3.4.View Dir


节点样式如图:

获取当前摄像机在“世界空间”或“切线空间”中的视角方向,获取向量的坐标空间可以在属性栏进行设置。


4.顶点数据节点


4.1.Time

输出Unity运行过程中经过的时间,单位秒。可以更改Scale的数值,修改时间经过的速度。


4.2.Time Parameter

Unity内置的时间变量_Time,4个输出分别为:

  • t/20
  • t
  • t*2
  • t*3
    时间单位 秒


4.3.Sin Time 、Cos Time

  • Sin Time:随时间按照正弦曲线往复变化,范围[-1,1]
  • Cos Time:随时间按照余弦曲线往复,范围[-1,1]
相关文章
|
13天前
|
图形学
【#Unity Shader#Amplify Shader Editor(ASE)_第五篇】
【#Unity Shader#Amplify Shader Editor(ASE)_第五篇】
|
13天前
|
图形学
【#Unity Shader#Amplify Shader Editor(ASE)_第八篇】
【#Unity Shader#Amplify Shader Editor(ASE)_第八篇】
|
13天前
|
图形学
【#Unity Shader#Amplify Shader Editor(ASE)_第四篇】
【#Unity Shader#Amplify Shader Editor(ASE)_第四篇】
|
13天前
|
图形学
【#Unity Shader#Amplify Shader Editor(ASE)_第七篇】
【#Unity Shader#Amplify Shader Editor(ASE)_第七篇】
|
13天前
|
图形学
【#Unity Shader#Amplify Shader Editor(ASE)_第九篇】
【#Unity Shader#Amplify Shader Editor(ASE)_第九篇】
|
13天前
|
图形学
【#Unity Shader#Amplify Shader Editor(ASE)_第三篇】
【#Unity Shader#Amplify Shader Editor(ASE)_第三篇】
|
13天前
|
缓存 图形学 异构计算
【#Unity Shader#Amplify Shader Editor(ASE)_第二篇】
【#Unity Shader#Amplify Shader Editor(ASE)_第二篇】
|
13天前
|
前端开发 图形学
【#Unity Shader#Amplify Shader Editor(ASE)_第一篇】
【#Unity Shader#Amplify Shader Editor(ASE)_第一篇】
|
13天前
|
图形学 C++
【Unity Shader入坑篇---有ASE创建Unity Shader,那么Unity Shader代码的相关知识还有必要学或了解吗?】
【Unity Shader入坑篇---有ASE创建Unity Shader,那么Unity Shader代码的相关知识还有必要学或了解吗?】
|
13天前
|
存储 图形学
【Unity Shader 消融效果_案例分享】
【Unity Shader 消融效果_案例分享】