养生 装修 购物 美食 感冒 便秘 营销 加盟 小吃 火锅 管理 创业 搭配 减肥 培训 旅游

Unity 3D Text 如何可被遮挡且单面显示

时间:2024-09-25 20:35:26

本经验介绍在Unity中,使用自带的3DText时,如何让文字可被遮挡且单面显示。需要修改Shader和Material。

Unity 3D Text 如何可被遮挡且单面显示

工具/原料

Unity2018.3

方法/步骤

1、首先,在Unity中,默认的3DText渲染如图所示,图像可以被穿透且是双面显示的。

Unity 3D Text 如何可被遮挡且单面显示

Unity 3D Text 如何可被遮挡且单面显示

2、选中3DText,逐吴哉姆可以看到其TextMesh组件,以及使用的FontMaterial。为了让文字可被遮挡/单面显示,必须修改这两个地方。

Unity 3D Text 如何可被遮挡且单面显示

3、关于实现原理和方法,在Unity的Wiki文档的3DText中有介绍。

Unity 3D Text 如何可被遮挡且单面显示

4、在Shaders文件夹下创建一个Shader文件,如图所示。

Unity 3D Text 如何可被遮挡且单面显示

5、按照UnityWi氯短赤亻ki的说明,在Shader文件中粘贴如下代码。注意其中的CullBack是和原本GUI/3DTextShader的不同之处。

Unity 3D Text 如何可被遮挡且单面显示

6、接着创建一个新的Material,选中新的Material,修改其Shader为刚刚创建的Shader。

Unity 3D Text 如何可被遮挡且单面显示

7、接着打开原来的3DText游戏物体,找到TextMesh组件所引用的Font。

Unity 3D Text 如何可被遮挡且单面显示

8、将该Font的Texture拖动到新创建的材质的FontTexture上。

Unity 3D Text 如何可被遮挡且单面显示

9、此时材质已经准备好了,然后再次选中3DText游戏物体,将该材质拖动到其MeshRenderer组件的Materials上。

Unity 3D Text 如何可被遮挡且单面显示

10、最终可以看到如图效果,文字可以被遮挡,且单面显示了。

Unity 3D Text 如何可被遮挡且单面显示

© 一点知识