You need to enable JavaScript to run this app. Unity如何通过脚本访问Text Mesh并设置其文本内容
优惠活动
大模型
产品
解决方案
定价
更多

Unity如何通过脚本访问Text Mesh并设置其文本内容

Unity TextMesh文本赋值解决方案

类引用问题说明

你代码中使用的Text不是TextMesh对应的类,Text是UGUI原生普通文本组件的类,归属UnityEngine.UI命名空间,和TextMesh类不属于同一组件体系。

不同场景的代码修正方案

场景1:使用传统原生TextMesh组件

using UnityEngine;

public class TextMeshContentUpdate : MonoBehaviour
{
    // 替换原有Text类型为TextMesh类型
    public TextMesh textMeshObject;

    public void Update()
    {
        if(/* 自定义触发条件 */)
        {
            textMeshObject.text = "abc";
        }
    }
}

场景2:使用主流TextMeshPro(TMP)组件

当前Unity版本更推荐使用TextMeshPro作为文本方案,对应代码如下:

using UnityEngine;
// 引入TMP专属命名空间
using TMPro;

public class TMPContentUpdate : MonoBehaviour
{
    // UGUI界面内的TMP文本用此类型
    public TextMeshProUGUI uiTextMeshObject;
    // 3D世界空间内的TMP文本用此类型
    // public TextMeshPro worldTextMeshObject;

    public void Update()
    {
        if(/* 自定义触发条件 */)
        {
            uiTextMeshObject.text = "abc";
            // 3D文本赋值写法
            // worldTextMeshObject.text = "abc";
        }
    }
}

操作注意事项

  • 脚本挂载到场景对象后,将带对应文本组件的目标对象直接拖入Inspector面板的对应公开字段槽位即可完成绑定
  • 若运行时报空引用错误,优先检查目标对象是否挂载了对应文本组件、公开字段是否已完成赋值

内容的提问来源于stack exchange,提问作者robboot rpo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.12 22:15:01