Unity ShaderGraph教程——进阶shader

1.水面(一)

公式:场景深度 节点深度 --- 屏幕空间位置的W向量 = 半透明物体与不透明物体的相交边缘

原理:场景深度 节点深度包含透明像素,屏幕空间w向量不包含透明像素。

注意:需要在UniversalRP-xxxQuality inspector面板将Depth texture选项打开,才能读取深度值。

(1)片元着色器部分:

(2)顶点着色器部分

效果:

2.水面(二)

实现效果:水面光滑程度、水下物体以及阴影扭曲效果

(1)光滑程度

简单的通过一个float参数控制光滑程度

(2)扭曲效果

将屏幕上颜色和水面颜色混合,使场景中已经被渲染的不透明物体屏幕坐标产生一定的扭曲,跟当前颜色合成后模拟折射效果。

注意:需要用到scence color节点需要在UniversalRP-xxxQuality inspector面板将不透明texture的对勾打开

scence color和原基础颜色lerp,混合后已经具有透明度数值,所以原透明度不需要再单独输出。

相关推荐
老朱佩琪!10 小时前
在Unity中用简单工厂模式模拟原神中的元素反应
unity·简单工厂模式
虾球xz18 小时前
游戏引擎学习第111天
学习·游戏引擎
程序猿多布1 天前
预定义委托(C# and Unity)
unity·c#
虾球xz1 天前
游戏引擎学习第108天
学习·游戏引擎
虾球xz1 天前
游戏引擎学习第112天
java·学习·游戏引擎
Edision_li1 天前
DeepSeek教unity------Dotween
unity·游戏引擎
zfoo-framework2 天前
Unity中NavMesh的使用 及其 导出给java服务端进行寻路
unity
程序猿多布2 天前
数学函数(C#、Lua 、Unity)
unity·c#·lua
虾球xz2 天前
游戏引擎学习第110天
数码相机·学习·游戏引擎
爱写代码的山山2 天前
虚幻蓝图解决抗锯齿方案
游戏·ue5·游戏引擎·虚幻·抗锯齿化