Unity VR开发中UI始终优先渲染不被物体遮挡
在用Vive开发VR的时候,3DUI很容易被场景中的物体遮挡,解决办法是使用一个Shader:Overlay.shader,这个shader很好找,很多博客里都有源码。我只说shader的使用:1.新建一个material。2.将Overlay.shader拖放到新建的material中。3.将这个新建的material放到Image、RawImage、Text或者其他的要优先显示的UGUI上。(是Image、RawImage、Text组件的material,是组件的material,不是所在的Gameobject的Material)。
————————————————
```csharp
Shader "UI/Overlay"
{
Properties
{
[PerRendererData] _MainTex ("Font Texture", 2D) = "white" {}
_Color("Tint", Color) = (1,1,1,1)
_StencilComp ("Stencil Comparison", Float) = 8
_Stencil ("Stencil ID", Float) = 0
_StencilOp ("Stencil Operation", Float) = 0
_StencilWriteMask ("Stencil Write Mask", Float) = 255
_StencilReadMask ("Stencil Read Mask", Float) = 255
_ColorMask ("Color Mask", Float) = 15
}
SubShader
{
LOD 1