UnityShaderGraph 卡通水面效果

效果预览:

原理:

使用三张噪声贴图,结合UV偏移制作水面波纹混合的假象效果

噪声图1:

噪声图2:

噪声图3:

三次采样都是同样的方法,使用step函数来二分噪声

三张噪声采样结果相乘得到最终的波纹噪声区域area

area用来插值水面基础色和波纹基础色得到基本的水面颜色

效果如图:

这样的效果很明显会有噪声穿插导致破碎效果,而且很平面化,为此采用法线方式来增加层次感。

使用一张噪声图,同样采用相同的采样方式,用这张噪声图来进行法线换算,并且和光源进行兰伯特光照计算,在二分计算出明度和暗度区域

效果如下:

这样和算好的值相乘,得到最终的结果,如图:

虽然还有一个破碎的效果,但是这样叠加的效果已经马马虎虎可以过去了,还算比较有特色的。

增加效果:

计算深度编辑区域,采样一张噪声图作为泡沫效果,同样使用上述的方法采样噪声图

效果:

然后计算最终的颜色:

完成!!

DepthFade自定义节点:

效果:可以计算不透明交界深度

相关推荐
半盏茶香1 小时前
【C语言】分支和循环详解(下)猜数字游戏
c语言·开发语言·c++·算法·游戏
逐·風6 小时前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
_oP_i8 小时前
Unity Addressables 系统处理 WebGL 打包本地资源的一种高效方式
unity·游戏引擎·webgl
PandaQue8 小时前
《怪物猎人:荒野》游戏可以键鼠直连吗
游戏
UTwelve9 小时前
【UE5】一种老派的假反射做法,可以用于移动端,或对反射的速度、清晰度有需求的地方
ue5·虚幻引擎·着色器·虚幻4
代码盗圣11 小时前
GODOT 4 不用scons编译cpp扩展的方法
游戏引擎·godot
白狐欧莱雅13 小时前
使用python中的pygame简单实现飞机大战游戏
经验分享·python·游戏·pygame
豆本-豆豆奶14 小时前
用 Python 写了一个天天酷跑(附源码)
开发语言·python·游戏·pygame·零基础教程
Leoysq17 小时前
【UGUI】实现点击注册按钮跳转游戏场景
游戏·unity·游戏引擎·ugui
PandaQue19 小时前
《潜行者2切尔诺贝利之心》游戏引擎介绍
游戏引擎