Unity——【TextMeshPro/TMP】设置中文字体+鼠标经过时改变文本颜色

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.运行

         成功运行,鼠标经过“开始游戏”文本时,文本变成黑色;鼠标移开时,文本变成红色。

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值