目录
声明:
1.首先创建Unilt Shader Graph
2.设置Alpha透明通道
3)添加实心填充效果
4.编辑渲染管线
声明:
本教程学习均来自U3D中文课堂麦扣老师
1.首先创建Unilt Shader Graph
2021版创建步骤:
右击文件夹->create->Shader Graph->URP->Unilt Shader Graph
2.设置Alpha透明通道
1)在右侧Graph Inspector的Graph Settings中勾选Alpha Clipping以方便设置Alpha透明通道,并在在空白处右击新建Create Node 输入选择Multiply,利用该乘法可以将颜色加入到费尼尔现象当中。
2)为Alpha的透明设置颜色输出
在左侧Occlusion Shader点击"+"并选择Color,将"Color"控件拖动至编辑框空白处中,单击该控件,于右侧Graph Inspector中的Node Settings下的Default中设置相应的颜色。
并将对应的控件和输出相连接,如图所示:
3)添加实心填充效果
1)为费尼尔现象再添加一个噪点的效果类似于实心填充,在空白处右键新建在Create Node中输入选择Dither
我们可以在x处左右拖动,观察到可以用参数x的数值在调整实心填充的效果。于是我们可以添加一个变量。
2)在Occlusiton Shader中单击"+"添加Float,添加一个变量,想我们刚刚创建“Color”控件一样,将该控件拖动至编辑框的空白处。单击为它设置数值,并向如下图一样进行关联。
4.编辑渲染管线
回到游戏编辑界面,对渲染管线进行编辑。默认在Pipeline Settings中的Universal Render Pipeline Asset_Renderer
在Inspector中单击Add Renderer Feature->Render Objevts(Experimental),在Material中选择刚刚我们创建编辑的"Occlusion"效果,导入到渲染管线中。
这里我勾选深度"Depth",并将深度比例"Depth Test"设置为Greater,意味着更远的深度的效果,比如我们将人物Player移动至物体后可以实现"Occlusion"透明的效果。
切换至game页面,我们可以发现我们想要的透明剔除效果已经实现了!文章来源:https://www.toymoban.com/news/detail-818360.html
文章来源地址https://www.toymoban.com/news/detail-818360.html
到了这里,关于unity 3d 实现遮挡剔除效果的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!