【Unity ASE学习笔记】

本文详细介绍了Unity中的Amplify Shader Editor (ASE)工具,对比了ShaderForge和ShaderGraph,并提供了节点操作、贴图纹理、数学运算、自然光处理等核心知识点的学习概览,包括TextureSample、UV偏移、Fresnel等节点的使用示例。

ASE:Amplify Shader Editor 一款材质工具

一、工具比较

1、Shader Forge

  • 停止更新,只支持Unity2017,以后的版本需要找到修改后兼容的包体
  • 不支持Unity URP和HDRP
  • 通用渲染管线复用性高

2、Shader Graph

  • 官方工具,不断更新完善
  • 支持Unity URP和HDRP
  • 默认渲染管线不可以使用

3、ASE

  • 收费工具,可以去找包体
  • 支持Unity URP和HDRP
  • 复用性高于Shader Forge
  • 代码简洁

二、ASE插件工具下载

三、ASE界面

快捷键操作:先按住快捷键不放,再点击ASE编辑区域。

Space:打开搜索面板
T:纹理样本
U:纹理坐标

主要工作区详解

在这里插入图片描述
在这里插入图片描述

四、节点

常用节点概览

在这里插入图片描述

4.1、贴图纹理

4.1.1. Texture Sample(贴图节点)

在这里插入图片描述
说明
Model:对象和引用
Type:属性和全局
Name:节点名称
Property Name: 变量名称
Default Texture: 白
Mip Mode:Mipmap设置
Unpack Normal Map:解压缩法线贴图
Default Value: 默认材质贴图

4.1.2. Texture Coordinates(纹理坐标)

UV采样节点,可以进行UV的控制
在这里插入图片描述

  • 该节点和ShaderForge里的UV Coordinates一致,用于输出模型的UV坐标,选中节点后,在左上方的Parameters里的Reference需要选中对应的图片,才可以在外部材质里的Tilling和Offset进行编辑贴图的平铺和位移,在UV Set下可以选择多达8套UV。
4.1.3、UV偏移器(Panner)

UV偏移器

  • UV:传入贴图的UV坐标信息
  • Speed:传入二维向量,用于控制x轴、y轴的偏移
  • Time:传入时间选择器,可自动产生偏移运动
    List item
4.1.3、Rotator(旋转)

在这里插入图片描述

  • 该节点将会把输入的UV或者2维量围绕你所定义的Anchor点进行旋转,需要输入Time动态时间,不然会固定住,不会旋转。
  • 对于Anchor值,旋转的中心点(0,0)是UV左下角(1,1)是UV右上角。

4.2、常数节点(一维变量、二维变量、三维变量、四维变量、颜色变量)

在这里插入图片描述

4.3、四则运算(+ - * /)

在这里插入图片描述

  • Add:A+B
  • Subtract:A-B
  • Multiply:A*B
  • Divide:A/B

4.4、Set、Get、(注册、获取)

在这里插入图片描述

4.5、通道(附加Append、组件遮罩Component Mask、组件拆分Break To Components)

在这里插入图片描述

4.6、数学运算

在这里插入图片描述

4.6.1、ABS(绝对值)

在这里插入图片描述
在这里插入图片描述

4.6.2、 One Minus(1-x)

在这里插入图片描述
在这里插入图片描述

4.6.3、Power (幂)

在这里插入图片描述
在这里插入图片描述
Power幂:
Base:底数
Exp:幂指数

4.6.4、Lerp(线性插值)

在这里插入图片描述

Lerp线性插值:
以Alpha数值为标准,输出A和B之间的线性插值,Alpha为1时输出B,0时输出A,0.5时AB各一半。
y=(1-Alpha)*A + Alpha * B

4.6.7、Clamp(约束:Min和Max的数值可以自定义)

在这里插入图片描述
Clamp约束:
截取输入值,并将其约束到Min和Max两个数值中间,
如果输入值<0,则输出0,
如果输入值>1,则输出1。

4.6.8、Remap(重映射)

在这里插入图片描述

  • 将值从一个范围重映射到另一个范围。
  • 例如:Sin函数是在[-1,1]之间变化的,我们可以通过重映射将[-1,1]变化为[0,1],这样就不会有负值情况了。
4.6.9、Step(阶梯函数:非黑即白)

在这里插入图片描述
常用于硬溶解效果。
如果A<=B,则输出1,
如果A>B,则输出0。

示例1:
使用一维变量设置0-1.05(防止图片为1时溶解不掉)
效果:
在这里插入图片描述
示例2:
如果A输入图片上的这个区域亮度<=B输入图片上的对应区域,则这块区域输出白色,反之,则输出黑色。
效果:
在这里插入图片描述

4.6.10、SmoothStep(平滑阶梯函数)

在这里插入图片描述
如果输入值在Min和Max之间,则输出0和1之间的平滑Hermite插值,
如果Max大于Min,则在输入小于Min的时候,输出0,在输出值大于Max时,输出1。
效果:
在这里插入图片描述

4.7、自然光处理

4.7.1、Fresnel(菲涅尔折射)

在这里插入图片描述
World Normal:世界法线
View Dir:摄像机方向
Bias:底色
Scale:倍率。边缘亮度
Power:指数。数值越大,边缘越细

数学原理:

在这里插入图片描述

等效写法:

在这里插入图片描述

 Abs与Saturate节点属于优化项,优化原Fresnel节点造成的闪点现象
示例:

在这里插入图片描述

在这里插入图片描述

效果:
在这里插入图片描述

4.8、噪声生成

4.8.1、Noise Generator

在这里插入图片描述

Scale: 噪声尺寸大小

生成噪声图
在这里插入图片描述

4.8.2、Voronoi

在这里插入图片描述

Angle:旋转角度
Scale: 噪声尺寸大小
使用示例:
在这里插入图片描述

4.9、深度测试

4.9.1、Depth Fade

与物体相交返回0,未相交返回1
在这里插入图片描述
在这里插入图片描述
示例

链接

4.10、顶点

4.10.1、Vertex Color(顶点颜色)

在这里插入图片描述
粒子系统中的颜色修改器都是基于顶点颜色来进行计算的,如果材质只算了贴图,没有算顶点颜色,那么在粒子系统中无法修改图片的颜色节点

顶点颜色与软粒子效果
顶点颜色

请添加图片描述

软粒子

如果粒子没有软粒子效果,那么发射出来就是这种与地面有切边
请添加图片描述
加上Depth Fade(深度渐变)就不会有切边
请添加图片描述

知识点待学习:

这些都是啥?

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值