游戏中的视觉效果并不全靠美术(动画, 粒子等)实现, 很大一部分还要依靠渲染实现. 这是一种"由代码构成的特效", 可以轻松实现很多传统动画不便实现的效果. 在合适的时机和地点使用渲染特效, 能起到事半功倍的效果.
扫描
(内置渲染管线实现)
2D 的扫描效果比 3D 版本简单很多, 无需获取相机深度. 直接操作整个 uv 区域即可.
fixed left = scanPos - scanWidth; fixed right = scanPos; fixed factor = step(left, uv.x) * step(uv.x, right); scanColor = smoothstep(left, right, uv.x) * scanColor * scanIntensity * factor;
再于 C# 脚本中控制 scanPos 变化, 即可实现从左至右的变化效果.
故障(错位图块故障)
(URP 实现)
生成随机强度且横纵交错的图块
- 基于图块的强度, 进行uv的抖动采样
- 再基于图块强度值对G和B颜色通道进行采样
暂无关于此日志的评论。