

核心思路:
第一种
- 双摄像机,Camera1用来渲染除了水之外的对象,Camera2只用来渲染水
- 在OnRenderImage函数中对Camera2进行后处理,也就是对水的效果进行处理,让水有融合的效果
- 如果不用粒子的话,用一个精灵当作水的最小单位,给精灵对象添加Collider2D与Rigidbody2D组件,建一个物理材质,把水的摩擦力和弹力都设置为0
第二种
- 双摄像机,Camera1用来渲染除了水之外的对象,Camera2只用来渲染水
- 把两个摄像机都结果存储到Target Texture中
- 首先,用一个shader对Camera2的RT进行处理,实现融合效果,然后叠加两张RT
- 和第一种一样,需要添加碰撞器和刚体组件
摄像机设置:
第一种方式的摄像机设置


对于第二种方式来说,设置好layer(或者摄像机的位置和视锥体远近截面位置,确保两个摄像机值看到自己需要看到的对象即可),然

这篇博客介绍了在Unity中实现2D流体水效果的两种方法,涉及双摄像机渲染、后处理、水滴融合Shader及物理组件设置。作者推荐了一个2D流体包,通过特定的算法实现水的融合过渡,并提供了下载链接以供进一步研究。
最低0.47元/天 解锁文章
3498





