您的位置:首页 > 汽车 > 时评 > 【实现100个unity特效之19】使用ShaderGraph实现Unity 2D水

【实现100个unity特效之19】使用ShaderGraph实现Unity 2D水

2024/11/16 14:39:35 来源:https://blog.csdn.net/qq_36303853/article/details/141016674  浏览:    关键词:【实现100个unity特效之19】使用ShaderGraph实现Unity 2D水

最终效果

在这里插入图片描述

文章目录

  • 最终效果
  • 前言
  • 开始
  • 新增无光照影响的shaderGraph
  • 半透明效果,并且有一些颜色的变化
  • 其他办法
  • 更加复杂的2d水
  • 曲线河流
  • 不使用另外的相机的方法
  • 参考
  • 完结

前言

先粗略记录一下,后面再补充

开始

我们新建一个渲染器纹理render texture
在这里插入图片描述
设置尺寸,这边我会填入我屏幕的分辨率,你也可以用其他值,只不过我推荐填入2的幂,否则的话一旦Unity循环这个材质可能会有些间题
在这里插入图片描述
修改抗锯齿和贴图拼接方式,防止拉伸变形
在这里插入图片描述
然后我要创建另外一个摄像机,将他的画面投到这上面来
我们要保证它跟我的main cameral里面的设置是相同的,比如正交,尺寸,记得修改相机z为-10
在这里插入图片描述
它会自动伴随有一个audio listener,我们同一个场景当中只能有一个audio listener,将它移除
在这里插入图片描述

绑定输出到前面的render texture
在这里插入图片描述

如果你想后期再次更改这个TEXTRA的尺寸,你会注意可能这里相机的尺寸并不会跟着更改,这是unity一个bug,我们要将相机的这个texture移除,再重新配置,或者修改相机尺寸,即可刷新相机的尺寸
在这里插入图片描述

拉高水面渲染相机,因为我只希望看到水面下面从这儿开始的位置
在这里插入图片描述

创建白色图片
在这里插入图片描述

我们可以按键盘的F定位它一下,按键盘上的T键修改尺寸
拖拽的时候按住alt键或者Mac系统的option键,可以以中心点来放大调整一下它的尺寸
注意排序层自己调整
在这里插入图片描述

新增无光照影响的shaderGraph

在这里插入图片描述

那么首先我们要获得我们场景中倒影的这个图片
在这里插入图片描述

显示
在这里插入图片描述

翻转画面
在这里插入图片描述

可以根据翻转的情况调整摄像机y轴的位置
在这里插入图片描述
其实这时候就已经有镜面效果了,效果
在这里插入图片描述
添加噪点,和水波纹
在这里插入图片描述

在这里插入图片描述

效果
在这里插入图片描述

半透明效果,并且有一些颜色的变化

添加颜色节点,修改透明度的实现半透明效果
在这里插入图片描述

效果
在这里插入图片描述

其他办法

如果你直接有类似于water的这样的图片的画,可以直接和主图
然后将两个不同的节点直接multiply加在一起
在这里插入图片描述
然后我们也可以用这个气泡的效果让它动起来
可以看到我们只要改变这个的值就行
在这里插入图片描述

或者如果我只希望不想它显示里面的黑色部分,只想要显示这个白色波纹的部分的话,我们也可以添加反转
在这里插入图片描述

更加复杂的2d水

渲染环境和控制颠倒镜像
在这里插入图片描述
添加水波,和让水动起来
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
配置
在这里插入图片描述
效果
在这里插入图片描述

控制水面和水波的颜色
在这里插入图片描述

在这里插入图片描述
效果
在这里插入图片描述
添加海岸线的效果,并控制颜色变化
在这里插入图片描述
效果
在这里插入图片描述
控制河流向右流动,重点是把x值改为-0.1即可
在这里插入图片描述
效果
在这里插入图片描述

曲线河流

在这里插入图片描述

不使用另外的相机的方法

主要就是专给2D的个抓取屏幕这个结果的texture
在这里插入图片描述
注意这10.0之后的版本
在这里插入图片描述

参考

https://www.bilibili.com/video/BV1Ei4y1t7H4/
https://www.youtube.com/watch?v=-jA72OSTfwk

完结

赠人玫瑰,手有余香!如果文章内容对你有所帮助,请不要吝啬你的点赞评论和关注,你的每一次支持都是我不断创作的最大动力。当然如果你发现了文章中存在错误或者有更好的解决方法,也欢迎评论私信告诉我哦!

好了,我是向宇,https://xiangyu.blog.csdn.net

一位在小公司默默奋斗的开发者,闲暇之余,边学习边记录分享,站在巨人的肩膀上,通过学习前辈们的经验总是会给我很多帮助和启发!如果你遇到任何问题,也欢迎你评论私信找我, 虽然有些问题我也不一定会,但是我会查阅各方资料,争取给出最好的建议,希望可以帮助更多想学编程的人,共勉~
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com