Unity使用shaderGraph制作模拟水体的一些要点
因为水的折射,所以水下的物体应该发生一定程度的偏移,而在目前的项目中来看,偏移其实并不是通过折射所发出的,而是通过噪点图随机发生的,实际上跟折射没有直接关系。因为水的波涛,水应该随着时间上下运动,这个时候使用噪点和时间工具,将水的在y轴上的位置*波涛强度在Object世界里的模型的顶点相加得到新的顶点。然后把当前渲染的fragment的uv值加上法线的uv值得到一个新的uv坐标,再通过这个坐标从场景颜色中取出对应的颜色,实现扭曲的效果。老方法是通过原本存在的屏幕视角上的深度减去当前的屏幕坐标的z轴深度。
原创
2023-08-01 20:56:08 ·
372 阅读 ·
1 评论