麥子 发表于 2016-3-12 17:28

Unity 5实现水波着色器

今天为大家分享在Unity 5中实现可供移动平台使用的水波效果着色器,支持设置纹理和各参数来实现风格各异的水波效果。
注意:开始阅读本文前,可点击[阅读原文]查看文字版着色器代码。文中的移动平台针对一般配置的机型,不保证低端机型也能正常运行。另外Unity 5.3的着色器相较之前版本有些区别,本文的着色器需要Unity 5.3及以上版本(Unity 5.3.3p1测试通过)。
先看看最终运行效果:
下面介绍属性部分:
以上是显示在着色器检视面板中的属性,会影响到水的颜色、亮度、对比度、深度以及浪花的速度、高度等信息。其中用到三张贴图,分别是浪花法线贴图、岛屿遮罩贴图以及泡沫反射贴图。
岛屿遮罩贴图的四个分量用途如下:.r ——用于选择希望展现泡沫的区域.g——用于光照和颜色信息.b——用于选择希望展现浪花的区域.a——表示透明度
顶点输出结构体如下:
各顶点经顶点函数计算后会应用输出结构体中的顶点位置、颜色、深度、法线等信息。顶点函数如下:
最后是用于处理海岸线、浪花及浪花泛起泡沫等的片段函数:
例子中用到的浪花法线贴图如下,用于设置浪花的颜色及高光等:
海岸效果:
各贴图及参数设置示例如下:
最后再看一下渲染的效果:
我们将分享更多Unity 5着色器相关的文章在Unity官方中文社区(forum.china.unity3d.com),欢迎大家访问中文社区交流学习!
本文来源于:brabl.com 原作者:marasov


fanso6 发表于 2018-7-19 15:23

感谢楼主分享,谢谢~

legdlxx 发表于 2018-7-19 09:20

谢谢分享,下载地址在哪里?

moqingyuan 发表于 2018-5-7 15:10

6666很好 不错

Sunrays 发表于 2017-12-13 15:48

很好很强大

┄‘风の彼岸 发表于 2017-12-10 19:21

看了楼主的帖子,我只想说一句很好很强大!

asasfsda 发表于 2017-12-9 23:49




非常感谢

┄‘风の彼岸 发表于 2017-12-9 15:04

谢谢楼主分享~

atdawnzjl 发表于 2016-11-29 11:32

楼主,明明可以靠脸吃饭,偏偏要靠才华!

atdawnzjl 发表于 2016-11-29 11:32

膜拜神贴,后面的请保持队形~

Sam哥66 发表于 2016-4-1 10:56

这个水的插件哪里下载,能qq交流一下么?我的qq627514491
页: [1] 2
查看完整版本: Unity 5实现水波着色器