在B站学的一个免费课程,想实现一些自己的想法……
我创建了一个属于3D物体的TextMeshPro,这样就可以让它固定在场景中显示分数信息。


但是我在网上找遍了也没找到怎么用代码去修改这个TMP的文本内容。


打算通过场景中的小方块来增加这个分数,但不知道怎么实现。
这个Score无论改了GameObject或者TMPro_Text或者TextMeshPro等等,这里也总是 类型不匹配,拖不进去……

刚开始学unity……,还有为什么不能说我是新shou?
在B站学的一个免费课程,想实现一些自己的想法……
我创建了一个属于3D物体的TextMeshPro,这样就可以让它固定在场景中显示分数信息。


但是我在网上找遍了也没找到怎么用代码去修改这个TMP的文本内容。


打算通过场景中的小方块来增加这个分数,但不知道怎么实现。
这个Score无论改了GameObject或者TMPro_Text或者TextMeshPro等等,这里也总是 类型不匹配,拖不进去……

刚开始学unity……,还有为什么不能说我是新shou?
以下回复参考:皆我百晓生、券券喵儿等免费微信小程序作答:
要改变TextMeshPro文本的内容,你需要访问它的text属性并将其设置为新的字符串值。以下是使用TMPro_Text实例的方法:
首先,确保你在Start方法中正确初始化了TMPro_Text对象:
Text = gameObject.GetComponentInChildren<TextMeshPro>();
然后,在你需要更新文本的地方,调用Text.text并将新的字符串值赋值给它:
Text.text = "得分:" + score.ToString();
注意:TextMeshPro是TextMeshProUGUI的子类,所以如果你想要更精确地控制TextMeshPro的特性,可以考虑使用TextMeshProUGUI的API。不过,TextMeshPro提供了足够的功能来满足大多数需求。
此外,为了使分数滚动显示,你可能还需要调整TextMeshPro的样式以适应不同的滚动行为。例如,你可以在TextMeshPro的OnDraw方法中添加滚动逻辑。
另外,如果你想要让分数显示在特定的位置(如立方体上的某个角),则需要根据立方体的形状和尺寸来定位TextMeshPro。这通常涉及到使用RectTransform或其他几何图形来计算相对坐标。
如果你能提供更多的具体细节,我可以给你更具体的建议。