近期热门
粉丝2344
关注 0
获赞 8771
Unity 5实现水波着色器

[U3D] Unity 5实现水波着色器

[复制链接]
6363 12 1 5 8年前 举报
今天为大家分享在Unity 5中实现可供移动平台使用的水波效果着色器,支持设置纹理和各参数来实现风格各异的水波效果。

注意:开始阅读本文前,可点击[阅读原文]查看文字版着色器代码。文中的移动平台针对一般配置的机型,不保证低端机型也能正常运行。另外Unity 5.3的着色器相较之前版本有些区别,本文的着色器需要Unity 5.3及以上版本(Unity 5.3.3p1测试通过)。


先看看最终运行效果:

01.gif


下面介绍属性部分:

02.jpg


以上是显示在着色器检视面板中的属性,会影响到水的颜色、亮度、对比度、深度以及浪花的速度、高度等信息。其中用到三张贴图,分别是浪花法线贴图、岛屿遮罩贴图以及泡沫反射贴图。


岛屿遮罩贴图的四个分量用途如下:

.r ——用于选择希望展现泡沫的区域

.g——用于光照和颜色信息

.b——用于选择希望展现浪花的区域

.a——表示透明度


顶点输出结构体如下:

03.jpg


各顶点经顶点函数计算后会应用输出结构体中的顶点位置、颜色、深度、法线等信息。顶点函数如下:

04.jpg


最后是用于处理海岸线、浪花及浪花泛起泡沫等的片段函数:

05.jpg


例子中用到的浪花法线贴图如下,用于设置浪花的颜色及高光等:

06.jpg


海岸效果:

07.jpg


各贴图及参数设置示例如下:

08.jpg


最后再看一下渲染的效果:

09.gif


我们将分享更多Unity 5着色器相关的文章在Unity官方中文社区(forum.china.unity3d.com),欢迎大家访问中文社区交流学习!


本文来源于:brabl.com 原作者:marasov



1
点赞
0
打赏
5
添加到收藏夹

1

点击复制链接

使用微信扫码分享
一次扣10个券
全部评论12
您需要登录后才可以回帖 登录

感谢楼主分享,谢谢~
5年前
回复

使用道具 举报

谢谢分享,下载地址在哪里?
5年前
回复

使用道具 举报

6666很好 不错
6年前
回复

使用道具 举报

很好很强大
6年前
回复

使用道具 举报

看了楼主的帖子,我只想说一句很好很强大!
6年前
回复

使用道具 举报




非常感谢

6年前
回复

使用道具 举报

谢谢楼主分享~
6年前
回复

使用道具 举报

楼主,明明可以靠脸吃饭,偏偏要靠才华!
7年前
回复

使用道具 举报

膜拜神贴,后面的请保持队形~
7年前
回复

使用道具 举报

这个水的插件哪里下载,能qq交流一下么?我的qq627514491
8年前
回复

使用道具 举报

数据加载中....
没有更多评论了
您当前使用的浏览器IE内核版本过低会导致网站显示错误

请使用高速内核浏览器或其他浏览器