9.3D文本
9.1 知识点
3D 文本和 UI 文本的区别
组件不同
- 3D: 使用
TextMeshPro
。 - UI: 使用
TextMeshProUGUI
。
- 3D: 使用
用途不同
- 3D: 主要用于在 3D 场景中显示文字。
- UI: 主要用于在 UI 中显示文字,具备与 UI 相关的一些属性。
渲染方式
- 3D: 直接渲染在场景上。
- UI: 通过 UGUI 的 Canvas 系统渲染。
交互方式
- 3D: 通常通过添加碰撞器进行碰撞检测来判断交互。
- UI: 一般利用 UI 系统的交互规则,比如
EventTrigger
。
如何选择3D 文本和 UI 文本?
- 如果文本需要与 3D 场景交互,或者需要在 3D 场景中显示,选择 3D 文本
TextMeshPro
,将其视为 3D 物体进行处理即可。 - 如果文本需要在 UI 系统中使用,选择
TextMeshProUGUI
,将其视为 UI 组件处理即可。
3D 文本参数相关
3D 文本的参数设置与 UI 文本的相关参数几乎完全一致。
3D 文本脚本控制
- 组件名:
TextMeshPro
- 属性和方法也与 UI 组件几乎一致。
using TMPro;
using UnityEngine;
public class Lesson09_3D文本 : MonoBehaviour
{
public TextMeshProUGUI textMeshProUGUI; // UI 文本组件
public TextMeshPro textMeshPro; // 3D 文本组件
}
更多 API
更多 3D 文本的功能和使用方法可以参考官方文档:TextMeshPro 文档
9.2 知识点代码
Lesson09_3D文本.cs
using TMPro;
using UnityEngine;
public class Lesson09_3D文本 : MonoBehaviour
{
public TextMeshProUGUI textMeshProUGUI;
public TextMeshPro textMeshPro;
void Start()
{
#region 知识点一 3D文本和UI文本的区别
//1.组件不同
// 3D:TextMeshPro
// UI:TextMeshProUGUI
//2.用途不同
// 3D:主要用于在3D场景中显示文字
// UI:主要用于在UI中显示文字,具备UI相关的一些属性
//3.渲染方式
// 3D:直接渲染在场景上
// UI:通过UGUI的Canvas系统渲染
//4.交互方式
// 3D:一般通关添加碰撞器进行碰撞检测判断交互
// UI:一般利用UI系统的交互规则,比如EventTrigger
//如何选择?
//文本需要与3D场景交互需要在3D场景上显示,选择3D文本 TextMeshPro, 就把他当成3D物体处理即可
//文本需要在UI系统中使用,选择 TextMeshProUGUI, 把它当成UI组件使用即可
#endregion
#region 知识点二 3D文本参数相关
//和UI文本相关参数几乎一致
#endregion
#region 知识点三 3D文本脚本控制相关
//组件名:TextMeshPro
//属性方法也和UI组件几乎一致
#endregion
#region 知识点四 更多API
//https://docs.unity3d.com/Packages/com.unity.textmeshpro@4.0/api/TMPro.TextMeshPro.html
#endregion
}
}
9.3 练习题
TMP UI文本控件和3D文本控件的组件名分别是什么?在使用时需要引用什么命名空间?
UI组件名:TextMeshProUGUI
3D组件名:TextMeshPro
命名空间:TMPro
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com