VR开发中3D物体遮挡UI的解决方法

1、下载或复制要用的Shader代码

Shader来源博客地址:http://blog.csdn.net/u013032852/article/details/77642262

2、导入Unity中或新建脚本

3、使用

新建一个Material,直接把shader托给Material,完成赋值

4、使用环境和使用效果效果

在制作VR内容时,通常使用的都是UGUI,一般会将Canvas的render mode设置为world space,但是这样设置过后,因为UI是直接放在了场景里面,很容易被其他物体挡住,Unity官方的一个VR例子中给出了一个shader的解决方案,将如下的shader挂在材质上,并将这个材质赋予需要总是显示在所有物体前面的UI控件上,就可以解决这个问题。

使用前,Cube将Image遮挡了

使用后,UI始终位于最前端

使用shader后UI和cube的位置没有变化,但UI显示在cube的前面

原文:https://blog.csdn.net/qq_39484391/article/details/80487989

你可能感兴趣的:(VR开发中3D物体遮挡UI的解决方法)