别再死记硬背了!用这5个ShaderGraph Input节点,轻松搞定你的第一个材质特效(Unity 2022 LTS)
第一次打开ShaderGraph时,面对密密麻麻的节点列表,很多开发者都会感到无从下手。其实掌握几个核心Input节点,就能快速实现令人眼前一亮的材质效果。本文将带你用Time、Color、Slider、UV和Texture 2D这五个最实用的Input节点,在Unity 2022 LTS中创建一个会呼吸的发光材质。
1. 环境准备与基础设置
在开始前,确保你的Unity项目满足以下条件:
- 使用Unity 2022 LTS版本
- 已安装Universal RP或HDRP渲染管线
- 通过Package Manager添加ShaderGraph包
创建新ShaderGraph的步骤:
- 右键点击Project窗口 → Create → Shader → Universal Render Pipeline → Lit Shader Graph
- 双击打开新建的ShaderGraph文件
- 在Master Stack面板确认PBR材质类型为"Lit"
提示:如果找不到ShaderGraph选项,请检查Package Manager中是否已安装"Shader Graph"包
2. 核心Input节点实战应用
2.1 Time节点:让材质"活"起来
Time节点是制作动态效果的关键。在ShaderGraph中右键搜索"Time"添加节点,可以看到它提供多个时间参数:
- Time:从场景开始累计的时间(秒)
- Sine Time:基于正弦波的时间值
- Cosine Time:基于余弦波的时间值
实现呼吸灯效果的具体连接方式:
Time → Multiply(系数0.5) → Sine → Remap(-1到1 → 0到1) → Emission强度这样材质就会产生0到1之间周期性变化的发光强度。
2.2 Color与Slider节点:动态参数控制
Color节点不仅用于设置静态颜色,结合Slider节点可以实现运行时颜色调整:
- 创建Color节点并设置基础色调
- 添加Slider节点,范围设为0到1
- 使用Lerp节点混合两种颜色:
Color A → Lerp(A端口) Color B → Lerp(B端口) Slider → Lerp(T端口)在Unity材质面板中,Slider会显示为可拖动的参数控件,非常适合调试效果。
2.3 UV节点:纹理动态变形
UV节点配合Time节点可以创建流动纹理效果。以下是实现水面波纹的典型配置:
| 节点组合 | 功能说明 |
|---|---|
| UV → TilingAndOffset | 控制纹理平铺 |
| Time → Multiply → Sine | 生成波动频率 |
| Add节点合并UV与时间 | 产生动态偏移 |
// 具体连接示例 UV → TilingAndOffset(UV端口) Time → Multiply(0.2) → Sine → TilingAndOffset(Offset端口)2.4 Texture 2D节点:基础纹理应用
添加Texture 2D节点时要注意几个关键设置:
- Sampler State:控制纹理过滤方式
- Point:像素风格游戏适用
- Linear:平滑过渡效果
- Type:当使用法线贴图时需设为Normal
将纹理与颜色混合的常用方法:
Texture 2D → Sample Texture 2D(RGB) Color → Multiply Time → Sine → Multiply(0.5) → Add(0.5) → Multiply(透明度)3. 完整案例:动态发光材质
现在我们将所有节点组合起来,创建一个完整的动态材质:
基础设置
- 创建PBR Graph
- 设置Surface Type为Transparent
- 开启Emission
节点网络
- UV + Time驱动纹理流动
- 两个Color节点通过Slider混合
- Time控制Emission强度波动
参数优化
- 调整Sine波频率(0.3-0.5效果最佳)
- 设置Emission强度范围(1-3)
- 配置Slider默认值为0.5
注意:透明材质需要正确设置渲染队列,建议使用"Transparent"
4. 常见问题与性能优化
4.1 效果不明显怎么办?
- 检查Emission强度是否足够
- 确认场景中有适当的环境光
- 尝试增加颜色对比度
4.2 性能优化技巧
对于移动平台,建议:
- 减少复杂数学运算
- 使用更简单的Sine代替复杂曲线
- 降低纹理分辨率
关键性能指标参考:
| 平台 | 建议最大指令数 |
|---|---|
| PC | 100+ |
| 移动端 | 50-60 |
| WebGL | 40以下 |
5. 进阶应用思路
掌握基础节点后,可以尝试这些创意组合:
- UV扭曲:用Time影响UV坐标创建融化效果
- 动态遮罩:Slider控制材质不同区域的显示
- 多纹理混合:通过Time切换不同纹理
在项目实践中发现,将Time节点与Color的HSV转换结合,可以创造出更丰富的色彩变化效果。比如用Time驱动Hue值变化,就能实现彩虹色循环动画。