今天在用3D字体时碰到这个问题,字体会一直显示在相机最前面,与GUI 文字没有什么区别,
但是又发现这个字体文件的材质球又没办法更改,发现其实字体材质球用的shader是GUI/textShader,所以就会做GUI显示
解决办法:
1、新建一个材质球;
2、新建一个Shader,加上下面代码
Shader "Custom/3D Text Shader" {
Properties {
_MainTex ("Font Texture", 2D) = "white" {}
_Color ("Text Color", Color) = (1,1,1,1)
}
SubShader {
Tags { "Queue"="Transparent" "IgnoreProjector"="True" "RenderType"="Transparent" }
Lighting Off Cull Off ZWrite On Fog { Mode Off }
Blend SrcAlpha OneMinusSrcAlpha
Pass {
Color [_Color]
SetTexture [_MainTex] {
combine primary, texture * primary
}
}
}
}
3、将刚才的材质球的Shader改成自己新建的,并把字体文件下面的字体贴图拖到此材质球上面
4、将自己创建的材质球给3D Text对象
搞定!