1.创建文本Text-TextMeshPro
右键单击Hierarchy(层级)面板->3D Object->Text-TextMeshPro,将生成的对象命名为text
1.1添加TMP资源
因为是第一次访问TextMesh Pro,所以要先将资源添加到项目中。
在创建文本之后,unity下方出现一个弹框,点击Import IMP Essentials开始添加资源。
添加成功后,Scene中会出现文本信息:
1.2添加TMP示例和附加信息(可不添加)
2.修改文本为“开始游戏 ”
此时中文无法正确显示。
3.设置中文
3.1 找一个中文字体,拖入Assets中
可以直接使用电脑字体(比较方便):C盘->Windows->Fonts
这里导入的是黑体SIMHEI
3.2右击->字体->Create->TextMeshPro->Font Asset->SDF
生成资源SIMHEI SDF
3.3将SIMHEI SDF拖入text中
点击text,找到Main Settings下的Font Asset,鼠标按住SIMHEI SDF不动拖入图中红色方框处,此时,中文文本可以正常显示出来。
4.修改文本颜色
初始文本颜色最好不要设置成白色,否则后续写脚本时文本可能不变色 。
5.为text添加一个盒型碰撞器
主菜单的Component->Physics->Box Collider
6.添加脚本
Asset面板中右键->Create->C# Script
命名为TextControl,双击跳转到编译器,开始编写脚本。
7.编写脚本
保存,可以不关闭但一定要保存再回到unity。
using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
public class textControl : MonoBehaviour
{
void OnMouseEnter()
{
GetComponent<Graphic>().color = Color.black;
}
void OnMouseExit()
{
GetComponent<Graphic>().color = Color.red;
}
}
将脚本文件TextControl拖入text中:可以直接拖到Hierarchy(层级)面板的text上,也可以拖入text的Inspector中。
8.运行
成功运行,鼠标经过“开始游戏”文本时,文本变成黑色;鼠标移开时,文本变成红色。