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

最终效果

文章目录

前言

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

开始

我们新建一个render texture

设置尺寸

然后我要创建另外一个摄像机,将他的画面投到这上面来

我们要保证它跟我的main cameral里面的设置是相同的,比如正交,尺寸

它会自动伴随有一个audio listener,我们同一个场景当中只能有一个audio listener,将它移除

绑定输出到前面的render texture

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

拉高水面渲染相机,因为我只希望看到水面下面从这儿开始的位置

创建白色图片

我们可以按键盘的F定位它一下,按键盘上的T键修改尺寸

拖拽的时候按住alt键或者Mac系统的option键,可以以中心点来放大调整一下它的尺寸

注意排序层自己调整

新增无光照影响的shaderGraph

那么首先我们要获得我们场景中倒影的这个图片

显示

翻转画面

可以根据翻转的情况调整摄像机的位置

其实这时候就已经有镜面效果了,效果

添加噪点,和水波纹

效果

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

添加颜色节点,修改透明的实现半透明效果

效果

其他办法

如果你直接有类似于water的这样的图片的画,可以直接和主图

然后将两个不同的节点直接multiply加在一起

然后我们也可以用这个气泡的效果让它动起来

可以看到我们只要改变这个的值就行

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

参考

https://www.bilibili.com/video/BV1Ei4y1t7H4/

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

完结

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

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

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

相关推荐
MWHLS2 小时前
【以及好久没上号的闲聊】Unity记录8.1-地图-重构与优化
unity·开源
虾球xz3 小时前
游戏引擎学习第286天:开始解耦实体行为
c++·人工智能·学习·游戏引擎
WarPigs14 小时前
Unity光照笔记
笔记·unity·游戏引擎
gameatp17 小时前
UE RPG游戏开发练手 第二十六课 普通攻击1
游戏引擎·虚幻
神码编程18 小时前
【Unity】 HTFramework框架(六十五)ScrollList滚动数据列表
unity·游戏引擎·ugui
DanmF--18 小时前
Protobuf工具
网络·unity·游戏引擎·游戏程序
敲代码的 蜡笔小新21 小时前
【行为型之迭代器模式】游戏开发实战——Unity高效集合遍历与场景管理的架构精髓
unity·设计模式·c#·迭代器模式
Magnum Lehar1 天前
3d游戏引擎的math矩阵实现
线性代数·矩阵·游戏引擎
虾球xz2 天前
游戏引擎学习第282天:Z轴移动与摄像机运动
c++·学习·游戏引擎
飞起的猪2 天前
【虚幻引擎】UE5独立游戏开发全流程(商业级架构)
ue5·游戏引擎·游戏开发·虚幻·独立开发·游戏设计·引擎架构