Unity 实用教程 之 透明物体遮住实体效果的实现
1、打开Unity,新建一个空工程,具体如下图
2、在场景中新建一个“Cube”和“Sphere”,进行布局设置,具体如下图
3、新建一个“shader”命名为“Mask”,双击打开或者右键“Open C# Project”,具体如下图
4、“Mask”具体代码和代码说明如下图
5、“Mask”具体代码如下:Shader"Custom/Mask"{ SubShader{ //Geometry=2000 Tags{"求溻皑恰Queue" = "Geometry-10"} Lighting off //相当于小于或者等于本身深度值时,该物体渲染 ZTest LEqual //打开深度写入 ZWrite On //通道遮罩,为0时不写入任何颜色通道,除了深度缓存 ColorMask 0 Pass{} }}
6、脚本编译正确,回到Unity界面,新建一个“Material”,并且设置“Shader”为刚建的“Mask”,具体如下图
7、把刚才新建的材质赋值给“Cube”,此时“Cube”就同名看不见了,具体如下图
8、把“Cube”移动,挡住“Sphere”,此时“Cube”即看不见,但是有遮挡实体“Sphere”,具体如下图
9、但是运行场景,在“Game”游戏中,会发现“Cube”不透明,为黑色,具体如下图
10、因为此时照相机为“Clear Flags”是“Skybox”,修改照相机不是“Skybox”,你就会发现为透明了,具体如下图
11、到此,《Unity 实用教程 之 透明物体遮住实体效果的实现》讲解结束,谢谢
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
阅读量:27
阅读量:64
阅读量:75
阅读量:57
阅读量:90