Unity ShaderGraph 技能冷却转圈效果
- 前言
- 项目
- 场景布置
- 代码编写
- ShaderGraph 连线
- 总结
- 参考
前言
遇到一个需求,要展示技能冷却的圆形遮罩效果。
项目
场景布置
代码编写
Shader核心的就两句
// 将uv坐标系的原点移到纹理中心
float2 uv = i.uv - float2(0.5, 0.5);
// 计算当前像素点与中心点的夹角
float radian = atan2(uv.y, uv.x) * -1 + PI;
ShaderGraph 连线
总结
核心部分
计算当前像素点在纹理上的位置对应的极坐标的角度(弧度表示)。atan2是反正切函数,它返回的是给定两个坐标的反正切值。将结果乘以-1并加上PI是为了调整角度的方向和范围。
参考
[UnityShader3]转圈与冷却效果