Unity 的 UI系统中,对World space 状态的 Canvas UI支持不好,经常会出现Scene面板存在而Game面板消失的现象(如下图)。
该问题常常出在自定义Shader中,主要原因是渲染队列不同,而造成摄像机无法看到已经渲染的材质。
解决这个问题,只需要在shader中,Tags处添加"Queue" = "Overlay",即可。
SubShader
{
Tags
{
"RenderType" = "Transparent"
"Queue" = "Overlay"
}
......
在Game中就能看到该材质渲染的UI